direct_search_manager.hpp
Go to the documentation of this file.
1 
18 #pragma once
19 
21 #include <asr_world_model/GetViewportList.h>
22 #include "asr_msgs/AsrViewport.h"
23 
24 #include <sensor_msgs/JointState.h>
25 #include <asr_next_best_view/RobotStateMessage.h>
26 #include <asr_next_best_view/SetInitRobotState.h>
27 #include <asr_next_best_view/SetAttributedPointCloud.h>
28 #include <asr_next_best_view/RateViewports.h>
29 
30 #include "filter/filter_basic.hpp"
34 
35 #include <ISM/utility/TableHelper.hpp>
36 
37 
38 namespace directSearchWS {
39 
41 
42 private:
43  std::string dbfilenameParam;
44 
46 
51 
53 
54  double currentPan;
55  double currentTilt;
57 
58  PosePtr parsePose(const rapidxml::xml_node<> *node, const char *poseName) const;
59  bool getViewportsFromWorldModel(std::vector<asr_msgs::AsrViewport> &viewports);
60 
61  bool reorderPosesByNBV(const SearchedObjectTypes &searchedObjectTypes);
62  bool deleteAllRedundantPoses(const RobotStatePtrVecPtr &robotStates) const;
63  bool filterPosesDependingOnAlreadyFoundObjectTypes(const RobotStatePtrVecPtr &robotStates, const SearchedObjectTypes &searchedObjectTypes) const;
64 
65  bool setInitialRobotState();
66  bool setPointCloudInNBV(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds);
67  void ptuDriverStateCallback(const sensor_msgs::JointState::ConstPtr &ptuState);
68 
69 protected:
71 
73 
75 
76  bool parsePosesToExploreFromXML(const std::string &path);
77 
78 public:
80  virtual ~DirectSearchManager();
81 
82  virtual bool initHandler() = 0;
83  virtual bool resetHandler();
84  virtual bool getNextRobotState(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds);
85  virtual bool backToInitial(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds);
86 
87 };
88 
90 bool checkSearchedObjectTypesAreEquale(const SearchedObjectTypes &searchecObjectTypes1, const SearchedObjectTypes &searchecObjectTypes2);
91 
92 }
93 
94 
bool setPointCloudInNBV(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds)
std::vector< std::string > SearchedObjectTypes
Definition: ptu_tuple.hpp:27
FilterPosesDependingOnAlreadyFoundObjectTypesPtr filterPosesDependingOnAlreadyFoundObjectTypesPtr
bool reorderPosesByNBV(const SearchedObjectTypes &searchedObjectTypes)
bool filterPosesDependingOnAlreadyFoundObjectTypes(const RobotStatePtrVecPtr &robotStates, const SearchedObjectTypes &searchedObjectTypes) const
bool deleteAllRedundantPoses(const RobotStatePtrVecPtr &robotStates) const
virtual bool backToInitial(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds)
bool checkSearchedObjectTypesAreEquale(const SearchedObjectTypes &searchecObjectTypes1, const SearchedObjectTypes &searchecObjectTypes2)
std::vector< asr_msgs::AsrTypeAndId > SearchedObjectTypesAndIds
void ptuDriverStateCallback(const sensor_msgs::JointState::ConstPtr &ptuState)
PosePtr parsePose(const rapidxml::xml_node<> *node, const char *poseName) const
bool getViewportsFromWorldModel(std::vector< asr_msgs::AsrViewport > &viewports)
SearchedObjectTypes getSearchedObjectTypesFromAWithoutB(const SearchedObjectTypes &a, const SearchedObjectTypes &b)
bool parsePosesToExploreFromXML(const std::string &path)
virtual bool getNextRobotState(const SearchedObjectTypesAndIds &searchedObjectTypesAndIds)
DoFilterIterationPtr doFilterIterationPtrForPosesDependingOnAlreadyFoundObjectTypes


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