1 #ifndef ABSTRACT_MEDIATOR_
2 #define ABSTRACT_MEDIATOR_
11 #include <ros/package.h>
12 #include <yaml-cpp/yaml.h>
15 #include <octomap/octomap.h>
16 #include <pcl/point_cloud.h>
17 #include <pcl/octree/octree.h>
21 #define box_size tf2::Vector3(0.0318f, 0.0636f, 0.091f)
22 #define R_POS tf2::Vector3(0,0.6525f,0.4425f -0.005f)
23 #define L_POS tf2::Vector3(0,-0.6525f,0.4425f -0.005f)
24 #define M_POS tf2::Vector3(0.6525f,0,0.4425f-0.005f)
36 std::vector<std::vector<tf2::Transform>>
objects_;
40 std::vector<std::vector<Abstract_robot_element*>>
wings_;
52 inline std::vector<std::vector<Abstract_robot_element*>>
wings() {
return wings_;}
62 pcl::PointCloud< pcl::PointXYZ >::Ptr
vector_to_cloud(std::vector<pcl::PointXYZ>& vector);
63 std::vector<pcl::PointXYZ>
generate_Ground(
const tf2::Vector3 origin,
const float diameter,
float resolution);
66 virtual void set_wings(std::vector<std::pair<std::vector<object_data>,
int>>& wbp)=0;
69 virtual void build_wings(std::bitset<3>& wing,
int& robot)=0;