]> sigrok.org Git - pulseview.git/blobdiff - pv/sigsession.cpp
Added SigSession::get_data()
[pulseview.git] / pv / sigsession.cpp
index a582122c15d3cdb353551c209c2c388835d397de..82fa877065254cd05c38f82aa64c19c54063732e 100644 (file)
@@ -53,6 +53,7 @@ using boost::lock_guard;
 using boost::mutex;
 using boost::shared_ptr;
 using std::map;
 using boost::mutex;
 using boost::shared_ptr;
 using std::map;
+using std::set;
 using std::string;
 using std::vector;
 
 using std::string;
 using std::vector;
 
@@ -202,6 +203,18 @@ void SigSession::stop_capture()
        _sampling_thread.join();
 }
 
        _sampling_thread.join();
 }
 
+set< shared_ptr<data::SignalData> > SigSession::get_data() const
+{
+       lock_guard<mutex> lock(_signals_mutex);
+       set< shared_ptr<data::SignalData> > data;
+       BOOST_FOREACH(const shared_ptr<view::Signal> sig, _signals) {
+               assert(sig);
+               data.insert(sig->data());
+       }
+
+       return data;
+}
+
 vector< shared_ptr<view::Signal> > SigSession::get_signals() const
 {
        lock_guard<mutex> lock(_signals_mutex);
 vector< shared_ptr<view::Signal> > SigSession::get_signals() const
 {
        lock_guard<mutex> lock(_signals_mutex);