selection_topics.hpp
Go to the documentation of this file.
1 #ifndef GRAPH_RVIZ_PLUGIN_SELECTION_TOPICS_HPP
2 #define GRAPH_RVIZ_PLUGIN_SELECTION_TOPICS_HPP
3 
4 #include <deque>
5 #include <mutex>
6 #include <QCheckBox>
7 #include <QDialog>
8 #include <QDialogButtonBox>
9 #include <QLabel>
10 #include <QMessageBox>
11 #include <QScrollArea>
12 #include <QVBoxLayout>
13 #include <ros/ros.h>
15 
16 namespace graph_rviz_plugin
17 {
18 
19 class SelectionTopics : public QDialog
20 {
21 Q_OBJECT
22 
23 public:
24  SelectionTopics(std::shared_ptr<ros::NodeHandle> nh,
25  std::deque<std::shared_ptr<TopicData>> already_displayed_topics,
26  const std::vector<std::string> allowed_types,
27  const bool single_choice,
28  QDialog *parent = 0);
30  std::deque<std::shared_ptr<TopicData>> displayed_topics_;
32 
33 Q_SIGNALS:
34  void displayMessageBox(const QString,
35  const QString,
36  const QString,
37  const QMessageBox::Icon);
38 
39 protected Q_SLOTS:
40  void displayMessageBoxHandler(const QString title,
41  const QString text,
42  const QString info = "",
43  const QMessageBox::Icon icon = QMessageBox::Icon::Information);
44  void okClicked();
45 
46 private:
47  void detectTopics();
48  std::vector<QAbstractButton *> topic_buttons_;
49  std::shared_ptr<ros::NodeHandle> nh_;
50  std::deque<std::shared_ptr<TopicData>> already_displayed_topics_;
51  const std::vector<std::string> allowed_types_;
52  const bool single_choice_;
53 };
54 
55 }
56 
57 #endif
std::deque< std::shared_ptr< TopicData > > displayed_topics_
std::vector< TopicInfo > V_TopicInfo
std::deque< std::shared_ptr< TopicData > > already_displayed_topics_
std::vector< QAbstractButton * > topic_buttons_
const std::vector< std::string > allowed_types_
void displayMessageBoxHandler(const QString title, const QString text, const QString info="", const QMessageBox::Icon icon=QMessageBox::Icon::Information)
SelectionTopics(std::shared_ptr< ros::NodeHandle > nh, std::deque< std::shared_ptr< TopicData >> already_displayed_topics, const std::vector< std::string > allowed_types, const bool single_choice, QDialog *parent=0)
ros::master::V_TopicInfo supported_topics_
void displayMessageBox(const QString, const QString, const QString, const QMessageBox::Icon)
std::shared_ptr< ros::NodeHandle > nh_


graph_rviz_plugin
Author(s): Édouard Pronier, Victor Lamoine - Institut Maupertuis
autogenerated on Mon Feb 28 2022 22:27:30