X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fdata%2Fdecodesignal.hpp;h=d50aace9c2dc841fe62c5b820dcd9aa8a4bd22e0;hb=8ebf8079b43ba0aebe9bc5d4d27049b4a91aa22d;hp=1d6c1ab4debc3d678b7d71c48c9ac8e68702bbe4;hpb=5b6ae10391736ab2f81de851686dee15bbcbf9f9;p=pulseview.git diff --git a/pv/data/decodesignal.hpp b/pv/data/decodesignal.hpp index 1d6c1ab..d50aace 100644 --- a/pv/data/decodesignal.hpp +++ b/pv/data/decodesignal.hpp @@ -87,7 +87,7 @@ public: bool is_decode_signal() const; const vector< shared_ptr >& decoder_stack() const; - void stack_decoder(srd_decoder *decoder); + void stack_decoder(const srd_decoder *decoder); void remove_decoder(int index); bool toggle_decoder_visibility(int index); @@ -152,10 +152,12 @@ private: Q_SIGNALS: void new_annotations(); + void decode_finished(); void channels_updated(); private Q_SLOTS: void on_capture_state_changed(int state); + void on_data_cleared(); void on_data_received(); private: @@ -178,14 +180,6 @@ private: map rows_; map, decode::Row> class_rows_; - /** - * This mutex prevents more than one thread from accessing - * libsigrokdecode concurrently. - * @todo A proper solution should be implemented to allow multiple - * decode operations in parallel. - */ - static mutex global_srd_mutex_; - mutable mutex input_mutex_, output_mutex_, logic_mux_mutex_; mutable condition_variable decode_input_cond_, logic_mux_cond_; bool frame_complete_;