HLR  0.0.1
ObjectInterpreter.hpp
1 #ifndef OBJECTINTERPRETER_HPP
2 #define OBJECTINTERPRETER_HPP
3 
4 #include <vector>
5 #include <boost/circular_buffer.hpp>
6 #include "KinectInterpreter.hpp"
7 #include "LidarInterpreter.hpp"
8 #include "Object.hpp"
9 
10 namespace HLR
11 {
12 namespace PointCloud
13 {
20 {
21 public:
27  ObjectInterpreter() = default;
37  std::vector<Object> get_current_objects();
38 
50  std::vector<Object> get_changed_objects();
51 
52 private:
53  void merge_objects();
54 
55  std::vector<Object> current_objects;
56  boost::circular_buffer<std::vector<Object>> history =
57  boost::circular_buffer<std::vector<Object>>(5);
58  KinectInterpreter kinect_interpreter;
59  LidarInterpreter lidar_interpreter;
60 };
61 } // namespace PointCloud
62 } // namespace HLR
63 #endif /* OBJECTINTERPRETER_HPP */
Class responsible for merging the world data from the Kinect and the LiDAR.
Definition: ObjectInterpreter.hpp:19
std::vector< Object > get_current_objects()
Returns all the objects visible at this moment.
A class responsible for reading and interpreting the Kinect data.
Definition: KinectInterpreter.hpp:14
A class responsible for reading and interpreting the LiDAR data.
Definition: LidarInterpreter.hpp:17
std::vector< Object > get_changed_objects()
Returns all the objects visible at this moment that changed since last call of this function...