5c890b9940b33ed4ba23a1aebb4da1edc1987212
[platform/core/system/sensord.git] / src / shared / sensor_types.h
1 /*
2  * sensord
3  *
4  * Copyright (c) 2016 Samsung Electronics Co., Ltd.
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  */
19
20 #ifndef _SENSOR_TYPES_H_
21 #define _SENSOR_TYPES_H_
22
23 #include "enum_factory.h"
24
25 #ifdef __cplusplus
26 extern "C"
27 {
28 #endif
29
30 #define SENSOR_TYPE(DEF_SENSOR, DEF_SENSOR_VALUE) \
31         DEF_SENSOR_VALUE(UNKNOWN_SENSOR, -2) \
32         DEF_SENSOR_VALUE(ALL_SENSOR, -1) \
33         DEF_SENSOR_VALUE(ACCELEROMETER_SENSOR, 0) \
34         DEF_SENSOR(GRAVITY_SENSOR) \
35         DEF_SENSOR(LINEAR_ACCEL_SENSOR) \
36         DEF_SENSOR(GEOMAGNETIC_SENSOR) \
37         DEF_SENSOR(ROTATION_VECTOR_SENSOR) \
38         DEF_SENSOR(ORIENTATION_SENSOR) \
39         DEF_SENSOR(GYROSCOPE_SENSOR) \
40         DEF_SENSOR(LIGHT_SENSOR) \
41         DEF_SENSOR(PROXIMITY_SENSOR) \
42         DEF_SENSOR(PRESSURE_SENSOR) \
43         DEF_SENSOR(ULTRAVIOLET_SENSOR) \
44         DEF_SENSOR(TEMPERATURE_SENSOR) \
45         DEF_SENSOR(HUMIDITY_SENSOR) \
46         DEF_SENSOR(HRM_SENSOR) \
47         DEF_SENSOR(HRM_LED_GREEN_SENSOR) \
48         DEF_SENSOR(HRM_LED_IR_SENSOR) \
49         DEF_SENSOR(HRM_LED_RED_SENSOR) \
50         DEF_SENSOR(GYROSCOPE_UNCAL_SENSOR) \
51         DEF_SENSOR(GEOMAGNETIC_UNCAL_SENSOR) \
52         DEF_SENSOR(GYROSCOPE_RV_SENSOR) \
53         DEF_SENSOR(GEOMAGNETIC_RV_SENSOR) \
54         \
55         DEF_SENSOR_VALUE(HUMAN_PEDOMETER_SENSOR, 0x300) \
56         DEF_SENSOR(HUMAN_SLEEP_MONITOR_SENSOR) \
57         DEF_SENSOR(HUMAN_SLEEP_DETECTOR_SENSOR) \
58         DEF_SENSOR(HUMAN_STRESS_MONITOR_SENSOR) \
59         \
60         DEF_SENSOR_VALUE(EXERCISE_WALKING_SENSOR, 0x400) \
61         DEF_SENSOR(EXERCISE_RUNNING_SENSOR) \
62         DEF_SENSOR(EXERCISE_HIKING_SENSOR) \
63         DEF_SENSOR(EXERCISE_CYCLING_SENSOR) \
64         DEF_SENSOR(EXERCISE_STAIR_CLIMBING_SENSOR) \
65         DEF_SENSOR(EXERCISE_ELLIPTICAL_SENSOR) \
66         DEF_SENSOR(EXERCISE_INDOOR_CYCLING_SENSOR) \
67         DEF_SENSOR(EXERCISE_ROWING_SENSOR) \
68         DEF_SENSOR(EXERCISE_STEPPER_SENSOR) \
69         \
70         DEF_SENSOR_VALUE(FUSION_SENSOR, 0x900) \
71         DEF_SENSOR(AUTO_ROTATION_SENSOR) \
72         DEF_SENSOR(AUTO_BRIGHTNESS_SENSOR) \
73         \
74         DEF_SENSOR_VALUE(GESTURE_MOVEMENT_SENSOR, 0x1200) \
75         DEF_SENSOR(GESTURE_WRIST_UP_SENSOR) \
76         DEF_SENSOR(GESTURE_WRIST_DOWN_SENSOR) \
77         DEF_SENSOR(GESTURE_MOVEMENT_STATE_SENSOR) \
78         \
79         DEF_SENSOR_VALUE(GPS_BATCH_SENSOR, 0x1A00) \
80         DEF_SENSOR(ACTIVITY_TRACKER_SENSOR) \
81         \
82         DEF_SENSOR_VALUE(HRM_CTRL_SENSOR, 0x1A80) \
83         DEF_SENSOR(EXERCISE_COACH_SENSOR) \
84         DEF_SENSOR(ACTIVITY_LEVEL_MONITOR_SENSOR) \
85         \
86         DEF_SENSOR_VALUE(WEAR_STATUS_SENSOR, 0x2000) \
87         DEF_SENSOR(WEAR_ON_MONITOR_SENSOR) \
88         DEF_SENSOR(NO_MOVE_DETECTOR_SENSOR) \
89         DEF_SENSOR(RESTING_HR_SENSOR) \
90         DEF_SENSOR(STEP_LEVEL_MONITOR_SENSOR) \
91         DEF_SENSOR(EXERCISE_SENSOR) \
92         DEF_SENSOR(EXERCISE_HR_SENSOR) \
93         DEF_SENSOR(WORKOUT_SENSOR) \
94         DEF_SENSOR(CYCLE_MONITOR_SENSOR) \
95         DEF_SENSOR(STAIR_TRACKER_SENSOR) \
96         \
97         DEF_SENSOR_VALUE(CONTEXT_SENSOR, 0x7000) \
98         DEF_SENSOR(MOTION_SENSOR) \
99         DEF_SENSOR(PIR_SENSOR) \
100         DEF_SENSOR(PIR_LONG_SENSOR) \
101         DEF_SENSOR(DUST_SENSOR) \
102         DEF_SENSOR(THERMOMETER_SENSOR) \
103         DEF_SENSOR(PEDOMETER_SENSOR) \
104         DEF_SENSOR(FLAT_SENSOR) \
105         DEF_SENSOR(HRM_RAW_SENSOR) \
106         DEF_SENSOR(TILT_SENSOR) \
107         DEF_SENSOR(RV_RAW_SENSOR) \
108
109 #define BIO_HRM_SENSOR              HRM_SENSOR
110 #define BIO_LED_GREEN_SENSOR        HRM_LED_GREEN_SENSOR
111 #define BIO_LED_IR_SENSOR           HRM_LED_IR_SENSOR
112 #define BIO_LED_RED_SENSOR          HRM_LED_RED_SENSOR
113 #define BIO_SENSOR                  HRM_RAW_SENSOR
114 #define SLEEP_DETECTOR_SENSOR       HUMAN_SLEEP_DETECTOR_SENSOR
115 #define STRESS_MONITOR_SENSOR       HUMAN_STRESS_MONITOR_SENSOR
116 #define AUTOSESSION_EXERCISE_SENSOR WORKOUT_SENSOR
117
118 DECLARE_SENSOR_ENUM(sensor_type_t, SENSOR_TYPE)
119
120 enum proxi_change_state {
121         PROXIMITY_STATE_NEAR = 0,
122         PROXIMITY_STATE_FAR = 1,
123 };
124
125 enum auto_rotation_state {
126         AUTO_ROTATION_DEGREE_UNKNOWN = 0,
127         AUTO_ROTATION_DEGREE_0,
128         AUTO_ROTATION_DEGREE_90,
129         AUTO_ROTATION_DEGREE_180,
130         AUTO_ROTATION_DEGREE_270,
131 };
132
133 #ifdef __cplusplus
134 }
135 #endif
136
137 #ifdef __cplusplus
138 DECLARE_SENSOR_ENUM_UTIL_NS(sensor_type_t)
139 #endif
140
141 #include <sensor_deprecated.h>
142
143 #endif /* _SENSOR_TYPES_H_ */