]> sigrok.org Git - pulseview.git/blobdiff - pv/sigsession.h
SigSession: Converted _signals_mutex into a boost::shared_mutex
[pulseview.git] / pv / sigsession.h
index 08a0fd0fadb5cbe23b89e8e93acea84dae027599..62994256c80b2008c97158f213a13690ee5af41e 100644 (file)
@@ -29,6 +29,8 @@
 #include <thread>
 #include <vector>
 
+#include <boost/thread.hpp>
+
 #include <QObject>
 #include <QString>
 
@@ -104,8 +106,9 @@ public:
 
        std::set< std::shared_ptr<data::SignalData> > get_data() const;
 
-       std::vector< std::shared_ptr<view::Signal> >
-               get_signals() const;
+       boost::shared_mutex& signals_mutex() const;
+
+       const std::vector< std::shared_ptr<view::Signal> >& signals() const;
 
 #ifdef ENABLE_DECODE
        bool add_decoder(srd_decoder *const dec);
@@ -158,7 +161,7 @@ private:
        mutable std::mutex _sampling_mutex;
        capture_state _capture_state;
 
-       mutable std::mutex _signals_mutex;
+       mutable boost::shared_mutex _signals_mutex;
        std::vector< std::shared_ptr<view::Signal> > _signals;
 
        mutable std::mutex _data_mutex;