1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
package com.iailab.netsdk.lib.structure;
 
 
import com.iailab.netsdk.lib.NetSDKLib;
 
import java.io.UnsupportedEncodingException;
 
/**
 * @author : 260611
 * @description : 交通路口车道统计事件 (对应 DH_ALARM_TRAFFIC_FLOW_STAT)
 * @since : Created in 2022/03/10 10:12
 */
 
public class ALARM_TRAFFIC_FLOW_STAT_INFO extends NetSDKLib.SdkStructure {
    /**
     * 事件动作 0:脉冲
     */
    public int nAction;
    /**
     * 通道号
     */
    public int nChannelID;
    /**
     * 事件名称
     */
    public byte[] szName = new byte[128];
    /**
     * 时间戳(单位是毫秒)
     */
    public int PTS;
    /**
     * 事件ID
     */
    public int nEventID;
    /**
     * 事件发生的时间
     */
    public NET_TIME_EX stuUTC = new NET_TIME_EX();
    /**
     * 序号
     */
    public int nSequence;
    /**
     * 流量状态数量
     */
    public int nStateNum;
    /**
     * 流量状态, 每个车道对应数组中一个元素
     */
    public NET_TRAFFIC_FLOW_STATE[] stuStates = (NET_TRAFFIC_FLOW_STATE[]) new NET_TRAFFIC_FLOW_STATE().toArray(8);
    /**
     * 静止车辆数,当前时刻检测范围内车速小于某个阀值的车辆数,单位:辆
     */
    public int nStopVehiclenum;
    /**
     * 车辆总数,当前时刻检测范围内检测到的所有车道内的车辆总数,单位:辆
     */
    public int nDetectionAreaVehicleNum;
    /**
     * 保留字节
     */
    public byte[] szReserverd = new byte[1024];
 
    @Override
    public String toString() {
        String stuStatesStr = "";
        if(stuStates.length > 0){
            stuStatesStr += "stuStates[0] = ";
            stuStatesStr += stuStates[0].toString();
        }
        for(int i = 1; i < stuStates.length; i ++){
            stuStatesStr += ",stuStates[" + i + "] = ";
            stuStatesStr += stuStates[i].toString();
        }
        try {
            return "ALARM_TRAFFIC_FLOW_STAT_INFO{" +
                    "nAction=" + nAction +
                    ", nChannelID=" + nChannelID +
                    ", szName UTF-8=" + new String(szName,"UTF-8").trim() +
                    ", szName GBK=" + new String(szName,"GBK").trim() +
                    ", PTS=" + PTS +
                    ", nEventID=" + nEventID +
                    ", stuUTC=" + stuUTC.toStringTime() +
                    ", nSequence=" + nSequence +
                    ", nStateNum=" + nStateNum +
                    ", stuStates=" + stuStatesStr +
                    ", nStopVehiclenum=" + nStopVehiclenum +
                    ", nDetectionAreaVehicleNum=" + nDetectionAreaVehicleNum +
                    '}';
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return null;
    }
}