]> sigrok.org Git - pulseview.git/blobdiff - pv/popups/channels.cpp
Fix build on MinGW (boost thread related).
[pulseview.git] / pv / popups / channels.cpp
index 5a854453c3eebf1d78e27c5b7a205b45fe4e8656..ee0daedf4b1035f76c6d6346dc9a59616be8db49 100644 (file)
 
 using namespace Qt;
 
+using boost::shared_lock;
+using boost::shared_mutex;
+using std::lock_guard;
 using std::map;
+using std::mutex;
 using std::set;
 using std::shared_ptr;
 using std::vector;
@@ -60,12 +64,14 @@ Channels::Channels(SigSession &session, QWidget *parent) :
        // Create the layout
        setLayout(&_layout);
 
-       shared_ptr<sigrok::Device> device = _session.get_device();
+       shared_ptr<sigrok::Device> device = _session.device();
        assert(device);
 
        // Collect a set of signals
        map<shared_ptr<Channel>, shared_ptr<Signal> > signal_map;
-       const vector< shared_ptr<Signal> > sigs = _session.get_signals();
+
+       shared_lock<shared_mutex> lock(_session.signals_mutex());
+       const vector< shared_ptr<Signal> > &sigs(_session.signals());
 
        for (const shared_ptr<Signal> &sig : sigs)
                signal_map[sig->channel()] = sig;
@@ -183,7 +189,7 @@ QGridLayout* Channels::create_channel_group_grid(
        {
                assert(sig);
 
-               QCheckBox *const checkbox = new QCheckBox(sig->get_name());
+               QCheckBox *const checkbox = new QCheckBox(sig->name());
                _check_box_mapper.setMapping(checkbox, checkbox);
                connect(checkbox, SIGNAL(toggled(bool)),
                        &_check_box_mapper, SLOT(map()));