]> sigrok.org Git - pulseview.git/blobdiff - pv/sigsession.cpp
Removed spurious declaration
[pulseview.git] / pv / sigsession.cpp
index a69f068e804f3d249ec831f59395e5dcec31904e..b27fd6ec7f80e8d77635e4219a2fed65c4cfde63 100644 (file)
@@ -34,6 +34,8 @@
 
 #include <assert.h>
 
+#include <stdexcept>
+
 #include <sys/stat.h>
 
 #include <QDebug>
@@ -193,11 +195,12 @@ boost::shared_ptr<data::Logic> SigSession::get_data()
        return _logic_data;
 }
 
-void SigSession::add_decoder(srd_decoder *const dec,
+bool SigSession::add_decoder(srd_decoder *const dec,
        std::map<const srd_probe*,
-               boost::shared_ptr<view::Signal> > probes,
+               boost::shared_ptr<view::LogicSignal> > probes,
        GHashTable *options)
 {
+       try
        {
                lock_guard<mutex> lock(_signals_mutex);
 
@@ -208,7 +211,14 @@ void SigSession::add_decoder(srd_decoder *const dec,
                                _decode_traces.size()));
                _decode_traces.push_back(d);
        }
+       catch(std::runtime_error e)
+       {
+               return false;
+       }
+
        signals_changed();
+
+       return true;
 }
 
 vector< shared_ptr<view::DecodeSignal> > SigSession::get_decode_signals() const
@@ -418,8 +428,8 @@ void SigSession::read_sample_rate(const sr_dev_inst *const sdi)
        // Read out the sample rate
        if(sdi->driver)
        {
-               const int ret = sr_config_get(sdi->driver,
-                       SR_CONF_SAMPLERATE, &gvar, sdi);
+               const int ret = sr_config_get(sdi->driver, sdi, NULL,
+                       SR_CONF_SAMPLERATE, &gvar);
                if (ret != SR_OK) {
                        qDebug("Failed to get samplerate\n");
                        return;
@@ -495,7 +505,7 @@ void SigSession::sample_thread_proc(struct sr_dev_inst *sdi,
        }
 
        // Set the sample limit
-       if (sr_config_set(sdi, SR_CONF_LIMIT_SAMPLES,
+       if (sr_config_set(sdi, NULL, SR_CONF_LIMIT_SAMPLES,
                g_variant_new_uint64(record_length)) != SR_OK) {
                error_handler(tr("Failed to configure "
                        "time-based sample limit."));