Implement infrared obstacle avoidance sensor
[apps/native/gear-racing-car.git] / inc / resource / resource_infrared_obstacle_avoidance_sensor.h
1 /*
2  * Copyright (c) 2017 Samsung Electronics Co., Ltd.
3  *
4  * Contact: Jin Yoon <jinny.yoon@samsung.com>
5  *          Geunsun Lee <gs86.lee@samsung.com>
6  *          Eunyoung Lee <ey928.lee@samsung.com>
7  *          Junkyu Han <junkyu.han@samsung.com>
8  *
9  * Licensed under the Flora License, Version 1.1 (the License);
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  * http://floralicense.org/license/
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an AS IS BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  */
21
22 #ifndef __POSITION_FINDER_RESOURCE_INFRARED_OBSTACLE_AVOIDANCE_SENSOR_H__
23 #define __POSITION_FINDER_RESOURCE_INFRARED_OBSTACLE_AVOIDANCE_SENSOR_H__
24
25
26 #include <stdint.h>
27 #include "resource_internal.h"
28 /**
29  * @brief Reads the value of gpio connected infrared obstacle avoidance sensor.
30  * @param[in] pin_num The number of the gpio pin connected to the infrared obstacle avoidance sensor
31  * @param[out] out_value The value of the gpio (zero or non-zero)
32  * @return 0 on success, otherwise a negative error value
33  * @see If the gpio pin is not open, creates gpio handle before reading the value of gpio.
34  */
35 extern int resource_read_infrared_obstacle_avoidance_sensor(int pin_num, uint32_t *out_value);
36
37 extern int resource_set_infrared_obstacle_avoidance_sensor_interrupted_cb(int pin_num, resource_changed_cb cb, void *data);
38
39 #endif /* __POSITION_FINDER_RESOURCE_INFRARED_OBSTACLE_AVOIDANCE_SENSOR_H__ */