dongyukun
2024-11-05 e8ad669f7c97d45cd23630dc101180a130d6c17e
提交 | 用户 | 时间
ce910c 1 package com.netsdk.lib.enumeration;
H 2
3 /**
4  * @author 251823
5  * @description 主动跟踪主操作命令, 接口 CLIENT_OperateMasterSlaveGroup
6  * @date 2022/09/14 13:50:01
7  */
8 public enum EM_MSGROUP_OPERATE_TYPE {
9     /**
10      * 打开主从跟踪组, 对应 NET_IN_MSGROUP_OPEN_INFO 和 NET_OUT_MSGROUP_OPEN_INFO
11      */
12     EM_MSGROUP_OPERATE_OPEN(0, "打开主从跟踪组, 对应 NET_IN_MSGROUP_OPEN_INFO 和 NET_OUT_MSGROUP_OPEN_INFO"),
13     /**
14      * 联动主从跟踪组, 对应 NET_IN_MSGROUP_LOCATE_INFO 和 NET_OUT_MSGROUP_LOCATE_INTO
15      */
16     EM_MSGROUP_OPERATE_LOCATE(1, "联动主从跟踪组, 对应 NET_IN_MSGROUP_LOCATE_INFO 和 NET_OUT_MSGROUP_LOCATE_INTO"),
17     /**
18      * 手动选定目标跟踪, 对应 NET_IN_MSGROUP_TRACK_INFO 和 NET_OUT_MSGROUP_TRACK_INFO
19      */
20     EM_MSGROUP_OPERATE_TRACK(2, "手动选定目标跟踪, 对应 NET_IN_MSGROUP_TRACK_INFO 和 NET_OUT_MSGROUP_TRACK_INFO"),
21     /**
22      * 关闭主从式跟踪器实例, 对应 NET_IN_MSGROUP_CLOSE_INFO 和 NET_OUT_MSGROUP_CLOSE_INFO
23      */
24     EM_MSGROUP_OPERATE_CLOSE(3, "关闭主从式跟踪器实例, 对应 NET_IN_MSGROUP_CLOSE_INFO 和 NET_OUT_MSGROUP_CLOSE_INFO"),
25     /**
26      * 从主设备选择矩形框联动从设备, 对应 NET_IN_MSGROUP_RECTLOCATE_INFO 和NET_OUT_MSGROUP_RECTLOCATE_INFO
27      */
28     EM_MSGROUP_OPERATE_RECTLOCATE(4,
29             "从主设备选择矩形框联动从设备, 对应 NET_IN_MSGROUP_RECTLOCATE_INFO 和 NET_OUT_MSGROUP_RECTLOCATE_INFO"),
30     /**
31      * 将从机固定位置下的视频坐标转换为主机的视频坐标, 对应 对应 NET_IN_MSGROUP_SLAVE_POSITION_TO_MASTER_INFO 和
32      * NET_OUT_MSGROUP_SLAVE_POSITION_TO_MASTER_INFO
33      */
34     EM_MSGROUP_OPERATE_SLAVE_POSITION_TO_MASTER(5,
35             "将从机固定位置下的视频坐标转换为主机的视频坐标, 对应 对应 NET_IN_MSGROUP_SLAVE_POSITION_TO_MASTER_INFO 和 NET_OUT_MSGROUP_SLAVE_POSITION_TO_MASTER_INFO");
36
37     private int value;
38
39     private String note;
40
41     public String getNote() {
42         return note;
43     }
44
45     public int getValue() {
46         return value;
47     }
48
49     EM_MSGROUP_OPERATE_TYPE(int givenValue, String note) {
50         this.value = givenValue;
51         this.note = note;
52     }
53
54     public static String getNoteByValue(int givenValue) {
55         for (EM_MSGROUP_OPERATE_TYPE enumType : EM_MSGROUP_OPERATE_TYPE.values()) {
56             if (givenValue == enumType.getValue()) {
57                 return enumType.getNote();
58             }
59         }
60         return null;
61     }
62
63     public static int getValueByNote(String givenNote) {
64         for (EM_MSGROUP_OPERATE_TYPE enumType : EM_MSGROUP_OPERATE_TYPE.values()) {
65             if (givenNote.equals(enumType.getNote())) {
66                 return enumType.getValue();
67             }
68         }
69         return -1;
70     }
71 }