Probes popup now live applies properly
[pulseview.git] / pv / sigsession.cpp
index d8976a1483c1c7ab47708f7fa285d84789b21c80..1099ad46704c77b1ba12fb38ad9a1d61cf645ee7 100644 (file)
@@ -223,6 +223,20 @@ vector< shared_ptr<view::DecodeSignal> > SigSession::get_decode_signals() const
        return _decode_traces;
 }
 
+void SigSession::remove_decode_signal(view::DecodeSignal *signal)
+{
+       for (vector< shared_ptr<view::DecodeSignal> >::iterator i =
+               _decode_traces.begin();
+               i != _decode_traces.end();
+               i++)
+               if ((*i).get() == signal)
+               {
+                       _decode_traces.erase(i);
+                       signals_changed();
+                       return;
+               }
+}
+
 void SigSession::set_capture_state(capture_state state)
 {
        lock_guard<mutex> lock(_sampling_mutex);
@@ -364,8 +378,7 @@ void SigSession::update_signals(const sr_dev_inst *const sdi)
 
                if(sdi) {
                        for (const GSList *l = sdi->probes; l; l = l->next) {
-                               const sr_probe *const probe =
-                                       (const sr_probe *)l->data;
+                               sr_probe *const probe = (sr_probe *)l->data;
                                assert(probe);
 
                                switch(probe->type) {