+{
+ // Check sampling isn't already active
+ if(_sampling_thread.get())
+ _sampling_thread->join();
+
+ _sampling_thread.reset(new boost::thread(
+ &SigSession::sample_thread_proc, this, sdi,
+ record_length, sample_rate));
+}
+
+vector< shared_ptr<view::Signal> >& SigSession::get_signals()
+{
+ return _signals;
+}
+
+boost::shared_ptr<LogicData> SigSession::get_data()
+{
+ return _logic_data;
+}
+
+void SigSession::sample_thread_proc(struct sr_dev_inst *sdi,
+ uint64_t record_length, uint64_t sample_rate)