blob: c72c579f24afb50a58d9adb1fa3997d5313d7112 [file] [log] [blame]
Yida Wang0bf43bd2017-03-22 18:16:31 -04001#ifndef _PARAM_ID_H_
2#define _PARAM_ID_H_
3
Yida Wanga7754692017-04-18 22:50:32 -04004#include <linux/string.h>
5#include <linux/types.h>
6
Yida Wang0bf43bd2017-03-22 18:16:31 -04007#define PARAM_ID_LEN 0
8#define PARAM_ID_OOM_ADJ 1
9#define PARAM_ID_APP_UID 2
10#define PARAM_ID_APP_PID 3
11#define PARAM_ID_VALUE 4
12#define PARAM_ID_SIZE 5
13#define PARAM_ID_FD 6
14#define PARAM_ID_RATE 7
15#define PARAM_ID_SENSOR 8
16#define PARAM_ID_WINDOW_TYPE 9
17#define PARAM_ID_WINDOW_FLAG 10
18#define NUM_PARAM_IDS 11
19
20static inline int param_id_index(const char *param, const char *end)
21{
22 int id = -1;
23 int len = ((end != NULL) ? (end - param) : (int)strlen(param));
24
25 if ((len == 3) && !memcmp(param, "len", 3))
26 id = 0;
27 else if ((len == 7) && !memcmp(param, "oom_adj", 7))
28 id = 1;
29 else if ((len == 7) && !memcmp(param, "app_uid", 7))
30 id = 2;
31 else if ((len == 7) && !memcmp(param, "app_pid", 7))
32 id = 3;
33 else if ((len == 5) && !memcmp(param, "value", 5))
34 id = 4;
35 else if ((len == 4) && !memcmp(param, "size", 4))
36 id = 5;
37 else if ((len == 2) && !memcmp(param, "fd", 2))
38 id = 6;
39 else if ((len == 4) && !memcmp(param, "rate", 4))
40 id = 7;
41 else if ((len == 6) && !memcmp(param, "sensor", 6))
42 id = 8;
43 else if ((len == 11) && !memcmp(param, "window_type", 11))
44 id = 9;
45 else if ((len == 11) && !memcmp(param, "window_flag", 11))
46 id = 10;
47
48 return id;
49}
50
51static inline const char *get_param_id_name(int id)
52{
53 const char *name = "?";
54
55 switch (id) {
56 case 0:
57 name = "len";
58 break;
59 case 1:
60 name = "oom_adj";
61 break;
62 case 2:
63 name = "app_uid";
64 break;
65 case 3:
66 name = "app_pid";
67 break;
68 case 4:
69 name = "value";
70 break;
71 case 5:
72 name = "size";
73 break;
74 case 6:
75 name = "fd";
76 break;
77 case 7:
78 name = "rate";
79 break;
80 case 8:
81 name = "sensor";
82 break;
83 case 9:
84 name = "window_type";
85 break;
86 case 10:
87 name = "window_flag";
88 break;
89 }
90 return name;
91}
92
93#endif /* _PARAM_ID_H_ */