]> sigrok.org Git - pulseview.git/blobdiff - pv/samplingbar.h
Added pv::SamplingBar::set_selected_device
[pulseview.git] / pv / samplingbar.h
index a9ceb6bd96af85e7e5ffb7c4c38303b7e1647e74..7034962c2a1a5593630815f632db53cd27ca155b 100644 (file)
 
 #include <stdint.h>
 
+#include <list>
+
 #include <QComboBox>
 #include <QDoubleSpinBox>
 #include <QToolBar>
 #include <QToolButton>
 
+struct st_dev_inst;
 class QAction;
 
 namespace pv {
@@ -37,14 +40,18 @@ class SamplingBar : public QToolBar
        Q_OBJECT
 
 private:
-       static const uint64_t RecordLengths[11];
+       static const uint64_t RecordLengths[20];
+       static const uint64_t DefaultRecordLength;
 
 public:
        SamplingBar(QWidget *parent);
 
+       void set_device_list(const std::list<struct sr_dev_inst*> &devices);
+
        struct sr_dev_inst* get_selected_device() const;
+       void set_selected_device(struct sr_dev_inst *const sdi);
+
        uint64_t get_record_length() const;
-       uint64_t get_sample_rate() const;
 
        void set_sampling(bool sampling);
 
@@ -52,11 +59,13 @@ signals:
        void run_stop();
 
 private:
-       void update_device_selector();
        void update_sample_rate_selector();
+       void update_sample_rate_selector_value();
+       void commit_sample_rate();
 
 private slots:
        void on_device_selected();
+       void on_sample_rate_changed();
        void configure();
 
 private:
@@ -70,6 +79,8 @@ private:
        QDoubleSpinBox _sample_rate_value;
        QAction *_sample_rate_value_action;
 
+       QIcon _icon_green;
+       QIcon _icon_grey;
        QToolButton _run_stop_button;
 };