ddt  0.1
ddtDataStreamWidget.hpp
Go to the documentation of this file.
1 // @copyright
2 // (c) Copyright ESO 2020
3 // All Rights Reserved
4 // ESO (eso.org) is an Intergovernmental Organization, and therefore special
5 // legal conditions apply.
6 //
7 // @file ddtDataStreamWidget.hpp
8 // @brief DDT Widgets library. Class for the DDT Data Stream Widget.
9 //
10 // Class for the Data Stream Widget. Allows to connect the viewer to a Data
11 // Stream.
12 //
13 // @author Carsten Mannel, CGI
14 // @since 2020/02/03
15 //
16 
17 #ifndef DDT_DATAVISUALISATION_DDTWIDGETS_DATASTREAMWIDGET_HPP
18 #define DDT_DATAVISUALISATION_DDTWIDGETS_DATASTREAMWIDGET_HPP
19 
20 #include <QtUiPlugin/QDesignerExportWidget>
21 
24 #include "ddt/ddtLogger.hpp"
26 
31 class QDESIGNER_WIDGET_EXPORT DdtDataStreamWidget : public DdtWidget {
32  Q_OBJECT
33 
34  public:
41  explicit DdtDataStreamWidget(QWidget* parent = nullptr);
42 
47 
52  void set_logger(ddt::DdtLogger* in_logger);
53 
57  void ReadPublisherList();
58 
62  void PopulatePublisherListCombo();
63 
64  protected:
69 
73  QStringList uri_list;
74 
75  private:
76  QPushButton* button_subscriber_attach;
77  QPushButton* button_subscriber_detach;
78  QPushButton* button_set;
79  QRadioButton* status_led;
80  QComboBox* combobox_publisher;
81  InactiveLineEdit* edit_status;
82 
83  QString stylesheet_attached;
84  QString stylesheet_detached;
85 
86  bool is_attached;
87 
91  void Init();
92 
93  void CreateWidget();
94 
95  signals:
102  void AttachDataStream(QString data_stream_id);
103 
108  void DetachDataStream(QString data_stream_id);
109 
110  protected slots:
114  void AttachDataStream();
115 
119  void DetachDataStream();
120 
124  void SetDataStream(QString startup_data_stream);
125 
129  void SetNewUri();
130 
134  void CurrentStatus(QString stream_id, ConnectionStatus status);
135 
139  void FlickerStatus();
140 };
141 
142 #endif // DDT_DATAVISUALISATION_DDTWIDGETS_DATASTREAMWIDGET_HPP
ConnectionStatus
ConnectionStatus
Definition: ddtDatavisualisationDefines.hpp:49
DdtDataStreamWidget::~DdtDataStreamWidget
virtual ~DdtDataStreamWidget()
InactiveLineEdit
Definition: ddtDatavisualisationUtils.hpp:24
ddt::DdtLogger
Definition: ddtLogger.hpp:48
ddtDatavisualisationUtils.hpp
DdtDataStreamWidget::AttachDataStream
void AttachDataStream(QString data_stream_id)
DdtDataStreamWidget::logger
ddt::DdtLogger * logger
Definition: ddtDataStreamWidget.hpp:68
DdtDataStreamWidget::uri_list
QStringList uri_list
Definition: ddtDataStreamWidget.hpp:73
DdtWidget
The DdtWidget class Use as wrapper class for new widgets.
Definition: ddtWidget.hpp:23
DdtDataStreamWidget
Definition: ddtDataStreamWidget.hpp:31
ddtLogger.hpp
ddtWidget.hpp
ddtDatavisualisationDefines.hpp
DdtDataStreamWidget::DetachDataStream
void DetachDataStream(QString data_stream_id)