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
package com.netsdk.lib.structure;
 
import com.netsdk.lib.NetSDKLib;
 
/**
 * @author 251823
 * @description 事件类型EVENT_IVS_INTELLI_SHELF(智能补货事件)对应的规则配置
 * @date 2022/11/15 19:52:34
 */
public class CFG_INTELLI_SHELF_INFO extends NetSDKLib.SdkStructure {
    /**
     * 规则名称,不同规则不能重名
     */
    public byte[] szRuleName = new byte[128];
    /**
     * 规则使能
     */
    public int bRuleEnable;
    /**
     * 相应物体类型个数
     */
    public int nObjectTypeNum;
    /**
     * 相应物体类型列表
     */
    public MaxNameByteArrInfo[] szObjectTypes = (MaxNameByteArrInfo[])new MaxNameByteArrInfo().toArray(NetSDKLib.MAX_OBJECT_LIST_SIZE);
    /**
     * 云台预置点编号 0~65535
     */
    public int nPtzPresetId;
    /**
     * 报警联动
     */
    public NetSDKLib.CFG_ALARM_MSG_HANDLE stuEventHandler = new NetSDKLib.CFG_ALARM_MSG_HANDLE();
    /**
     * 事件响应时间段
     */
    public NetSDKLib.TIME_SECTION_WEEK_DAY_10[]   stuTimeSection =
            (NetSDKLib.TIME_SECTION_WEEK_DAY_10[])new NetSDKLib.TIME_SECTION_WEEK_DAY_10().toArray(NetSDKLib.WEEK_DAY_NUM); 
    /**
     * 检测区顶点数
     */
    public int nDetectRegionPoint;
    /**
     * 检测区
     */
    public NetSDKLib.CFG_POLYGON[] stuDetectRegion = new NetSDKLib.CFG_POLYGON[20];
    /**
     * 货架上货物百分比低于阈值则报警, 0表示不报警
     */
    public short nThreshold;
    /**
     * 区域ID,该通道和PresetID下的某个区域,取值范围1-5
     */
    public short nAreaID;
    /**
     * 保留字节
     */
    public byte[] byReserved = new byte[4096];
 
    public CFG_INTELLI_SHELF_INFO() {
        for (int i = 0; i < stuTimeSection.length; i++) {
            stuTimeSection[i] = new NetSDKLib.TIME_SECTION_WEEK_DAY_10();
        }
        for (int i = 0; i < stuDetectRegion.length; i++) {
            stuDetectRegion[i] = new NetSDKLib.CFG_POLYGON();
        }
    }
}