direct_search_handler.hpp
Go to the documentation of this file.
1 
18 #pragma once
19 
20 #include <vector>
21 #include <string>
22 #include <fstream>
23 #include <sstream>
24 #include <algorithm>
25 #include <tuple>
26 #include <memory>
27 
28 #include <ros/ros.h>
29 #include <rapidxml.hpp>
30 #include <math.h>
31 #include <boost/lexical_cast.hpp>
32 #include <boost/shared_ptr.hpp>
33 #include <eigen3/Eigen/Geometry>
34 
35 #include "tf/transform_datatypes.h"
36 #include "asr_msgs/AsrTypeAndId.h"
37 
38 #include "model/robot_state.hpp"
39 #include "model/ptu_tuple.hpp"
40 #include "helper/pose_helper.hpp"
41 
42 
43 namespace directSearchWS {
44 
45 typedef std::vector<asr_msgs::AsrTypeAndId> SearchedObjectTypesAndIds;
46 
48 
49 private:
50 
51 protected:
53 
57  SearchedObjectTypesAndIds nextFilteredSearchedObjectTypesAndIds;
63 
65 
67 
68 public:
70  virtual ~DirectSearchHandler();
71 
72  virtual bool initHandler() = 0;
73  virtual bool resetHandler();
74  virtual bool getNextRobotState(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds); // decide next robot pose and ptu config
75  virtual bool backToInitial(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds);
76 
77  //getter
79  return nextRobotPosePtr;
80  }
81 
83  return nextCameraPosePtr;
84  }
85 
87  return nextPtuPtr;
88  }
89 
90  SearchedObjectTypesAndIds getActualFilteredSearchedObjectTypesAndIds() const {
92  }
93 
96  }
97 
98  bool getIsNoPoseLeft() const {
99  return isNoPoseLeft;
100  }
101 
104  }
105 
106  int getRemainingPTUPoses() const {
107  if (posesToExplorePtr->empty()) {
108  return 0;
109  }
110  return posesToExplorePtr->front()->getPtuListSize();
111  }
112 
114  return posesToExplorePtr->size();
115  }
116 
117  double getRemainingPosesDistances() const {
119  }
120 
121 };
122 
124 
125 void filterSearchedObjectTypes(SearchedObjectTypes &searched_object_types_to_filter, const SearchedObjectTypes &filter_searched_object_types);
126 void filterSearchedObjectTypesAndIds(SearchedObjectTypesAndIds &searched_object_types_and_ids_to_filter,
127  const SearchedObjectTypes &filter_searched_object_types);
129  const SearchedObjectTypes &second_searched_object_types);
131 template <typename T>
132 void checkParameterFromOtherNode(ros::NodeHandle &nh, const std::string &node_name, const std::string &param_name);
133 
134 }
135 
virtual bool getNextRobotState(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds)
void filterSearchedObjectTypes(SearchedObjectTypes &searched_object_types_to_filter, const SearchedObjectTypes &filter_searched_object_types)
virtual bool backToInitial(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds)
std::vector< std::string > SearchedObjectTypes
Definition: ptu_tuple.hpp:27
void checkParameterFromOtherNode(ros::NodeHandle &nh, const std::string &node_name, const std::string &param_name)
SearchedObjectTypesAndIds getActualFilteredSearchedObjectTypesAndIds() const
std::vector< asr_msgs::AsrTypeAndId > SearchedObjectTypesAndIds
void filterSearchedObjectTypesAndIds(SearchedObjectTypesAndIds &searched_object_types_and_ids_to_filter, const SearchedObjectTypes &filter_searched_object_types)
SearchedObjectTypesAndIds nextFilteredSearchedObjectTypesAndIds
boost::shared_ptr< DirectSearchHandler > DirectSearchHandlerPtr
SearchedObjectTypes getIntersectionOfSearchObjectTypes(const SearchedObjectTypes &first_searched_object_types, const SearchedObjectTypes &second_searched_object_types)


asr_direct_search_manager
Author(s): Borella Jocelyn, Karrenbauer Oliver, Mei├čner Pascal
autogenerated on Wed Jan 8 2020 03:15:41