houzhongjian
2024-11-06 7412dd652c0ac48c5a17b5d9b61d5d2a0f686137
提交 | 用户 | 时间
149dd0 1 package com.iailab.netsdk.lib.structure;
H 2
3
4 import com.iailab.netsdk.lib.NetSDKLib;
5
6 import java.util.Arrays;
7
8 /**
9  * @author : 260611
10  * @description : NET_TRAFFIC_FLOW_STATE
11  * @since : Created in 2022/03/10 10:12
12  */
13
14 public class NET_TRAFFIC_FLOW_STATE extends NetSDKLib.SdkStructure {
15     /**
16      * 车道号
17      */
18     public int nLane;
19     /**
20      * 状态值  若emJamState字段为有效值(不为 JAM_STATUS_UNKNOW) ,则dwState字段无效
21      */
22     public int dwState;
23     /**
24      * 流量值, 单位: 辆
25      */
26     public int dwFlow;
27     /**
28      * 流量值对应的统计时间, 单位:分钟。与dwPeriodByMili一起使用。
29      */
30     public int dwPeriod;
31     /**
32      * 车道方向信息
33      */
34     public NET_TRAFFIC_FLOWSTAT_INFO_DIR stTrafficFlowDir = new NET_TRAFFIC_FLOWSTAT_INFO_DIR();
35     /**
36      * 通过车辆总数
37      */
38     public int nVehicles;
39     /**
40      * 平均车速,单位km/h
41      */
42     public float fAverageSpeed;
43     /**
44      * 平均车长,单位米
45      */
46     public float fAverageLength;
47     /**
48      * 时间占有率,即单位时间内通过断面的车辆所用时间的总和占单位时间的比例
49      */
50     public float fTimeOccupyRatio;
51     /**
52      * 空间占有率,即按百分率计量的车辆长度总和除以时间间隔内车辆平均行驶距离
53      */
54     public float fSpaceOccupyRatio;
55     /**
56      * 车头间距,相邻车辆之间的距离,单位米/辆
57      */
58     public float fSpaceHeadway;
59     /**
60      * 车头时距,单位秒/辆
61      */
62     public float fTimeHeadway;
63     /**
64      * 车辆密度,每公里的车辆数,单位辆/km
65      */
66     public float fDensity;
67     /**
68      * 超速车辆数
69      */
70     public int nOverSpeedVehicles;
71     /**
72      * 低速车辆数
73      */
74     public int nUnderSpeedVehicles;
75     /**
76      * 大车交通量(9米<车长<12米),辆/单位时间
77      */
78     public int nLargeVehicles;
79     /**
80      * 中型车交通量(6米<车长<9米),辆/单位时间
81      */
82     public int nMediumVehicles;
83     /**
84      * 小车交通量(4米<车长<6米),辆/单位时间,
85      */
86     public int nSmallVehicles;
87     /**
88      * 摩托交通量(微型车,车长<4米),辆/单位时间,
89      */
90     public int nMotoVehicles;
91     /**
92      * 超长交通量(车长>=12米),辆/单位时间,
93      */
94     public int nLongVehicles;
95     /**
96      * 交通量, 辆/单位时间, 某时间间隔通过车道、道路或其他通道上一点的车辆数,常以1小时计,
97      */
98     public int nVolume;
99     /**
100      * 流率小车当量,辆/小时, 车辆通过车道、道路某一断面或某一路段的当量小时流量
101      */
102     public int nFlowRate;
103     /**
104      * 排队长度,单位:米, 从信号交叉口停车线到上游排队车辆末端之间的距离(建议废掉 改用dBackOfQueue下面)
105      */
106     public int nBackOfQueue;
107     /**
108      * 旅行时间,单位:秒, 车辆通过某一条道路所用时间。包括所有停车延误
109      */
110     public int nTravelTime;
111     /**
112      * 延误,单位:秒,驾驶员、乘客或行人花费的额外的行程时间
113      */
114     public int nDelay;
115     /**
116      * 车道方向,详见NET_ROAD_DIRECTION
117      */
118     public byte[] byDirection = new byte[16];
119     /**
120      * 车道行驶方向个数
121      */
122     public byte byDirectionNum;
123     /**
124      * 字节对齐
125      */
126     public byte[] reserved1 = new byte[3];
127     /**
128      * 道路拥挤状况  若此字段为有效值(不为 JAM_STATUS_UNKNOW) ,则以此字段为准, dwState字段无效
129      */
130     public int emJamState;
131     /**
132      * 客车交通量(辆/单位时间)
133      */
134     public int nPassengerCarVehicles;
135     /**
136      * 大货车交通量(辆/单位时间)
137      */
138     public int nLargeTruckVehicles;
139     /**
140      * 中货车交通量(辆/单位时间)
141      */
142     public int nMidTruckVehicles;
143     /**
144      * 轿车交通量(辆/单位时间)
145      */
146     public int nSaloonCarVehicles;
147     /**
148      * 面包车交通量(辆/单位时间)
149      */
150     public int nMicrobusVehicles;
151     /**
152      * 小货车交通量(辆/单位时间)
153      */
154     public int nMicroTruckVehicles;
155     /**
156      * 三轮车交通量(辆/单位时间)
157      */
158     public int nTricycleVehicles;
159     /**
160      * 摩托车交通量(辆/单位时间)
161      */
162     public int nMotorcycleVehicles;
163     /**
164      * 行人交通量(辆/单位时间)
165      */
166     public int nPasserbyVehicles;
167     /**
168      * 道路等级
169      */
170     public int emRank;
171     /**
172      * 流量状态
173      */
174     public int nState;
175     /**
176      * 车头虚拟线圈是否被占用 TURE表示占用,FALSE表示未占用
177      */
178     public int bOccupyHeadCoil;
179     /**
180      * 车尾虚拟线圈是否被占用 TURE表示占用,FALSE表示未占用
181      */
182     public int bOccupyTailCoil;
183     /**
184      * 流量数据是否有效 TURE表示有效,FALSE表示无效
185      */
186     public int bStatistics;
187     /**
188      * 左转车辆总数,单位:分钟
189      */
190     public int nLeftVehicles;
191     /**
192      * 右转车辆总数,单位:分钟
193      */
194     public int nRightVehicles;
195     /**
196      * 直行车辆总数,单位:分钟
197      */
198     public int nStraightVehicles;
199     /**
200      * 掉头车辆总数,单位:分钟
201      */
202     public int nUTurnVehicles;
203     /**
204      * 每个车道的最后一辆车坐标,采用8192坐标系
205      */
206     public NetSDKLib.NET_POINT stQueueEnd = new NetSDKLib.NET_POINT();
207     /**
208      * 排队长度,单位:米, 从信号交叉口停车线到上游排队车辆末端之间的距离
209      */
210     public double dBackOfQueue;
211     /**
212      * 流量值的毫秒时间,值不超过60000,和dwPeriod一起使用,流量值总时间:dwPeriod*60*1000+dwPeriodByMili(单位:毫秒)
213      */
214     public int dwPeriodByMili;
215     /**
216      * 公交车交通量(辆/单位时间)
217      */
218     public int nBusVehicles;
219     /**
220      * MPV交通量(辆/单位时间)
221      */
222     public int nMPVVehicles;
223     /**
224      * 中客车交通量(辆/单位时间)
225      */
226     public int nMidPassengerCarVehicles;
227     /**
228      * 微型轿车交通量(辆/单位时间)
229      */
230     public int nMiniCarriageVehicles;
231     /**
232      * 油罐车交通量(辆/单位时间)
233      */
234     public int nOilTankTruckVehicles;
235     /**
236      * 皮卡车交通量(辆/单位时间)
237      */
238     public int nPickupVehicles;
239     /**
240      * SUV交通量(辆/单位时间)
241      */
242     public int nSUVVehicles;
243     /**
244      * SUV或者MPV交通量(辆/单位时间)
245      */
246     public int nSUVorMPVVehicles;
247     /**
248      * 槽罐车交通量(辆/单位时间)
249      */
250     public int nTankCarVehicles;
251     /**
252      * 未知车辆交通量(辆/单位时间)
253      */
254     public int nUnknownVehicles;
255     /**
256      * 车道流量信息属性
257      */
258     public int emCustomFlowAttribute;
259     /**
260      * 道路空闲长度,例:如设定路段长度为100米,实际检测到排队长度为30米,那么道路空闲长度就为70米,单位:米
261      */
262     public int nRoadFreeLength;
263     /**
264      * 溢出状态。例:如给当前路段设定允许排队长度阀值,实际排队长度超过阀值后就判定当前时刻该路段有溢出。
265      */
266     public int emOverflowState;
267     /**
268      * / 排队车辆数,单位:辆
269      */
270     public int nQueueVehicleNum;
271     /**
272      * / 空间占有率统计个数
273      */
274     public int nSpaceOccupyRatioMultiCount;
275     /**
276      * / 空间占有率统计信息
277      */
278     public NET_SPACE_OCCUPY_RATIO_MULTI[] stuSpaceOccupyRatioMulti = new NET_SPACE_OCCUPY_RATIO_MULTI[32];
279     /**
280      * / 停车次数,周期内该车道内所有目标的总停车次数,单位:次
281      */
282     public int nTotalStopNum;
283     /**
284      * / 延误时间,周期内该车道内所有目标的总延误时间,单位:毫秒
285      */
286     public int nTotalDelayTime;
287     /**
288      * / 目标总数量,周期内进入该车道内所有目标总数量,单位 辆
289      */
290     public int nTotalNum;
291     /**
292      * / 平均停车次数,周期内该车道所有目标的平均停车次数。单位:次
293      */
294     public float fAverageStopNum;
295     /**
296      * / 平均延误时间,周期内该车道所有目标的平均延误时间。单位:毫秒
297      */
298     public float fAverageDelayTime;
299     /**
300      * / 流量饱和度,该车道内的流量饱和度
301      */
302     public float fFlowSaturationRatio;
303     /**
304      * / 最大排队长度,周期内最大排队长度,单位:米
305      */
306     public float fMaxQueueLen;
307     /**
308      * / 排队开始位置,排队时队首距设备的位置,以设备方向为正,负数表示队首在设备后方,单位:米
309      */
310     public float fQueueStartingPoint;
311     /**
312      * / 排队结束位置,排队时队尾距设备的位置,以设备方向为正,负数表示队尾在设备后方,单位:米
313      */
314     public float fQueueFinishingPoint;
315     /**
316      * / 空间占有目标个数,即区域车辆数,该车道内指定区域的车辆数目,支持车道内多区域统计,不同区域车辆数使用|符号分隔。
317      */
318     public byte[] szSpaceOccupyNum = new byte[64];
319     /**
320      * / 云台预置点,球机预置点必大于0
321      */
322     public int nPresetID;
323     /**
324      * / 保留字节
325      */
326     public byte[] reserved = new byte[88];
327     @Override
328     public String toString() {
329         return "NET_TRAFFIC_FLOW_STATE{" +
330                 "nLane=" + nLane +
331                 ", dwState=" + dwState +
332                 ", dwFlow=" + dwFlow +
333                 ", dwPeriod=" + dwPeriod +
334                 ", stTrafficFlowDir=" + stTrafficFlowDir.toString() +
335                 ", nVehicles=" + nVehicles +
336                 ", fAverageSpeed=" + fAverageSpeed +
337                 ", fAverageLength=" + fAverageLength +
338                 ", fTimeOccupyRatio=" + fTimeOccupyRatio +
339                 ", fSpaceOccupyRatio=" + fSpaceOccupyRatio +
340                 ", fSpaceHeadway=" + fSpaceHeadway +
341                 ", fTimeHeadway=" + fTimeHeadway +
342                 ", fDensity=" + fDensity +
343                 ", nOverSpeedVehicles=" + nOverSpeedVehicles +
344                 ", nUnderSpeedVehicles=" + nUnderSpeedVehicles +
345                 ", nLargeVehicles=" + nLargeVehicles +
346                 ", nMediumVehicles=" + nMediumVehicles +
347                 ", nSmallVehicles=" + nSmallVehicles +
348                 ", nMotoVehicles=" + nMotoVehicles +
349                 ", nLongVehicles=" + nLongVehicles +
350                 ", nVolume=" + nVolume +
351                 ", nFlowRate=" + nFlowRate +
352                 ", nBackOfQueue=" + nBackOfQueue +
353                 ", nTravelTime=" + nTravelTime +
354                 ", nDelay=" + nDelay +
355                 ", byDirection=" + Arrays.toString(byDirection) +
356                 ", byDirectionNum=" + byDirectionNum +
357                 ", emJamState=" + emJamState +
358                 ", nPassengerCarVehicles=" + nPassengerCarVehicles +
359                 ", nLargeTruckVehicles=" + nLargeTruckVehicles +
360                 ", nMidTruckVehicles=" + nMidTruckVehicles +
361                 ", nSaloonCarVehicles=" + nSaloonCarVehicles +
362                 ", nMicrobusVehicles=" + nMicrobusVehicles +
363                 ", nMicroTruckVehicles=" + nMicroTruckVehicles +
364                 ", nTricycleVehicles=" + nTricycleVehicles +
365                 ", nMotorcycleVehicles=" + nMotorcycleVehicles +
366                 ", nPasserbyVehicles=" + nPasserbyVehicles +
367                 ", emRank=" + emRank +
368                 ", nState=" + nState +
369                 ", bOccupyHeadCoil=" + bOccupyHeadCoil +
370                 ", bOccupyTailCoil=" + bOccupyTailCoil +
371                 ", bStatistics=" + bStatistics +
372                 ", nLeftVehicles=" + nLeftVehicles +
373                 ", nRightVehicles=" + nRightVehicles +
374                 ", nStraightVehicles=" + nStraightVehicles +
375                 ", nUTurnVehicles=" + nUTurnVehicles +
376                 ", stQueueEnd=" + stQueueEnd.toString() +
377                 ", dBackOfQueue=" + dBackOfQueue +
378                 ", dwPeriodByMili=" + dwPeriodByMili +
379                 ", nBusVehicles=" + nBusVehicles +
380                 ", nMPVVehicles=" + nMPVVehicles +
381                 ", nMidPassengerCarVehicles=" + nMidPassengerCarVehicles +
382                 ", nMiniCarriageVehicles=" + nMiniCarriageVehicles +
383                 ", nOilTankTruckVehicles=" + nOilTankTruckVehicles +
384                 ", nPickupVehicles=" + nPickupVehicles +
385                 ", nSUVVehicles=" + nSUVVehicles +
386                 ", nSUVorMPVVehicles=" + nSUVorMPVVehicles +
387                 ", nTankCarVehicles=" + nTankCarVehicles +
388                 ", nUnknownVehicles=" + nUnknownVehicles +
389                 ", emCustomFlowAttribute=" + emCustomFlowAttribute +
390                 ", nRoadFreeLength=" + nRoadFreeLength +
391                 ", emOverflowState=" + emOverflowState +
392                 '}';
393     }
394 }