projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Replaced boost::function with std::function
[pulseview.git]
/
pv
/
toolbars
/
samplingbar.h
diff --git
a/pv/toolbars/samplingbar.h
b/pv/toolbars/samplingbar.h
index 6fc8abd38e0fcdce4bcd6a45f2a4a36233f0b424..2c2431c427a71ccb0fa3ff166b38503737d8edb9 100644
(file)
--- a/
pv/toolbars/samplingbar.h
+++ b/
pv/toolbars/samplingbar.h
@@
-24,6
+24,8
@@
#include <stdint.h>
#include <list>
#include <stdint.h>
#include <list>
+#include <map>
+#include <memory>
#include <QComboBox>
#include <QDoubleSpinBox>
#include <QComboBox>
#include <QDoubleSpinBox>
@@
-34,13
+36,16
@@
#include <pv/widgets/popuptoolbutton.h>
#include <pv/widgets/sweeptimingwidget.h>
#include <pv/widgets/popuptoolbutton.h>
#include <pv/widgets/sweeptimingwidget.h>
-struct st_dev_inst;
class QAction;
namespace pv {
class SigSession;
class QAction;
namespace pv {
class SigSession;
+namespace device {
+class DevInst;
+}
+
namespace toolbars {
class SamplingBar : public QToolBar
namespace toolbars {
class SamplingBar : public QToolBar
@@
-55,10
+60,12
@@
private:
public:
SamplingBar(SigSession &session, QWidget *parent);
public:
SamplingBar(SigSession &session, QWidget *parent);
- void set_device_list(const std::list<struct sr_dev_inst*> &devices);
+ void set_device_list(
+ const std::list< std::shared_ptr<pv::device::DevInst> >
+ &devices,
+ std::shared_ptr<pv::device::DevInst> selected);
- struct sr_dev_inst* get_selected_device() const;
- void set_selected_device(struct sr_dev_inst *const sdi);
+ std::shared_ptr<pv::device::DevInst> get_selected_device() const;
void set_capture_state(pv::SigSession::capture_state state);
void set_capture_state(pv::SigSession::capture_state state);
@@
-69,6
+76,7
@@
private:
void update_sample_rate_selector();
void update_sample_rate_selector_value();
void update_sample_count_selector();
void update_sample_rate_selector();
void update_sample_rate_selector_value();
void update_sample_count_selector();
+ void update_device_config_widgets();
void commit_sample_rate();
void commit_sample_count();
void commit_sample_rate();
void commit_sample_count();
@@
-78,10
+86,17
@@
private slots:
void on_sample_rate_changed();
void on_run_stop();
void on_sample_rate_changed();
void on_run_stop();
+ void on_config_changed();
+
+protected:
+ bool eventFilter(QObject *watched, QEvent *event);
+
private:
SigSession &_session;
QComboBox _device_selector;
private:
SigSession &_session;
QComboBox _device_selector;
+ std::map<const sr_dev_inst*, std::weak_ptr<device::DevInst> >
+ _device_selector_map;
bool _updating_device_selector;
pv::widgets::PopupToolButton _configure_button;
bool _updating_device_selector;
pv::widgets::PopupToolButton _configure_button;