]> rtime.felk.cvut.cz Git - eurobot/public.git/blob - src/lidars/hokuyo/lib/urg_t.h
Create LIDAR lib for hadling both rangefinders - SICK and Hokuyo
[eurobot/public.git] / src / lidars / hokuyo / lib / urg_t.h
1 #ifndef QRK_C_URG_T_H
2 #define QRK_C_URG_T_H
3
4 /*!
5   \file
6   \brief Structure for URG control
7
8   \author Satofumi KAMIMURA
9
10   $Id: urg_t.h 1714 2010-02-21 20:53:28Z satofumi $
11 */
12
13 #include "urg_parameter_t.h"
14 #include "serial_t.h"
15
16
17 /*!
18   \brief Constant for URG control
19 */
20 typedef enum {
21   UrgLaserOff = 0,
22   UrgLaserOn,
23   UrgLaserUnknown,
24 } urg_laser_state_t;
25
26
27 /*!
28   \brief Structure for URG control
29 */
30 typedef struct {
31
32   serial_t serial_;              /*!< Structure of serial control */
33   int errno_;                    /*!< Store error number */
34   urg_parameter_t parameters_;   /*!< Sensor parameter */
35
36   int skip_lines_;   /*!< Number of lines to be skipped in one scan */
37   int skip_frames_; /*!< Number of scans to be skipped(Apply only to MD/MS) */
38   int capture_times_; /*!< Frequency of data acquisition(Apply only to MD/MS) */
39
40   urg_laser_state_t is_laser_on_; /*!< 0 when laser is turned off */
41
42   long last_timestamp_;         /*!< Final time stamp */
43   int remain_times_;            /*!< remain times of capture */
44
45   char remain_data_[3];
46   int remain_byte_;
47
48 } urg_t;
49
50 #endif /* !QRK_C_URG_T_H */