X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fdata%2Fsignalbase.hpp;h=865f2551662fed2ab137781752c9064191cb698d;hb=78bf7ce5aaa1e02717973dc559c24973a313b541;hp=fd7c38f5ea627d768830170db4768d46ad81fd69;hpb=b4d448004ab0899f231b26325e646499d5874144;p=pulseview.git diff --git a/pv/data/signalbase.hpp b/pv/data/signalbase.hpp index fd7c38f5..865f2551 100644 --- a/pv/data/signalbase.hpp +++ b/pv/data/signalbase.hpp @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -85,6 +86,7 @@ public: private: static const int ColourBGAlpha; static const uint64_t ConversionBlockSize; + static const uint32_t ConversionDelay; public: SignalBase(shared_ptr channel, ChannelType channel_type); @@ -255,7 +257,7 @@ public: virtual void restore_settings(QSettings &settings); - void start_conversion(); + void start_conversion(bool delayed_start=false); private: bool conversion_is_a2l() const; @@ -282,6 +284,8 @@ Q_SIGNALS: void samples_added(QObject* segment, uint64_t start_sample, uint64_t end_sample); + void min_max_changed(float min, float max); + private Q_SLOTS: void on_samples_cleared(); @@ -292,6 +296,8 @@ private Q_SLOTS: void on_capture_state_changed(int state); + void on_delayed_conversion_start(); + protected: shared_ptr channel_; ChannelType channel_type_; @@ -306,6 +312,7 @@ protected: atomic conversion_interrupt_; mutex conversion_input_mutex_; condition_variable conversion_input_cond_; + QTimer delayed_conversion_starter_; QString internal_name_, name_; QColor colour_, bgcolour_;