package com.iailab.netsdk.lib.structure;

import com.iailab.netsdk.lib.NetSDKLib.EVENT_TRAFFIC_CAR_PART_INFO;
import com.iailab.netsdk.lib.NetSDKLib.NET_EVENT_FILE_INFO;
import com.iailab.netsdk.lib.NetSDKLib.NET_MSG_OBJECT;
import com.iailab.netsdk.lib.NetSDKLib.SdkStructure;
import com.sun.jna.Pointer;

import static com.iailab.netsdk.lib.NetSDKLib.POINTERSIZE;

/**
 * @author 119178
 * @description 事件类型EVENT_IVS_TRAFFICACCIDENT(交通事故事件)对应的数据块描述信息
 * @date 2020/12/21
 */
public class DEV_EVENT_TRAFFICACCIDENT_INFO extends SdkStructure{
	/**
	 * 通道号
	 */
	public int                 nChannelID;        
	/**
	 * 事件名称
	 */
	public byte[]                szName=new byte[128];   
	/**
	 * 字节对齐
	 */
	public byte[]                bReserved1=new byte[4];  
	/**
	 * 时间戳(单位是毫秒)
	 */
	public double              PTS;   
	/**
	 * 事件发生的时间
	 */
	public NET_TIME_EX         UTC;   
	/**
	 * 事件ID
	 */
	public int                 nEventID;             
	/**
	 * 检测到的物体个数
	 */
	public int                 nObjectNum;                   
	/**
	 * 检测到的物体列表
	 */
	public NET_MSG_OBJECT[]      stuObjectIDs=(NET_MSG_OBJECT[])new NET_MSG_OBJECT().toArray(16);  
	/**
	 * 事件对应文件信息
	 */
	public NET_EVENT_FILE_INFO  stuFileInfo;   
	/**
	 * 事件动作,0表示脉冲事件,1表示持续性事件开始,2表示持续性事件结束;
	 */
	public byte                bEventAction;                              
	public byte[]                byReserved=new byte[2];
	/**
	 * 图片的序号, 同一时间内(精确到秒)可能有多张图片, 从0开始
	 */
	public byte               byImageIndex;  
	/**
	 * 抓图标志(按位),具体见NET_RESERVED_COMMON
	 */
	public int               dwSnapFlagMask;     
	/**
	 * 交通车辆部分信息
	 */
	public EVENT_TRAFFIC_CAR_PART_INFO   stuTrafficCarPartInfo;  
	/**
	 * 车道号
	 */
	public int                nLane;
	/**
	 * 图片信息个数
	 */
	public int					nImageInfoNum;
	/**
	 * 图片信息数组 {@link com.iailab.netsdk.lib.structure.NET_IMAGE_INFO_EX3}
	 */
	public Pointer pstuImageInfo;
	/**
	 * 公共信息 {@link com.iailab.netsdk.lib.NetSDKLib.EVENT_COMM_INFO}
	 */
	public Pointer  pstuCommInfo;
	/**
	 * 保留字节,留待扩展.
	 */
	public byte[]             bReserved=new byte[456-2*POINTERSIZE];
}