X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fstoresession.h;h=d365730e5217adc3cb352a30770cc346884d8136;hp=e543df13051eae592a8617a36e93e79f9b2763bc;hb=7223eb629eb8eb3b03fa26b9f22770dd7f98c4d1;hpb=f9abf97e78bc4825d80926b0ebc6cbaef40768b1 diff --git a/pv/storesession.h b/pv/storesession.h index e543df13..d365730e 100644 --- a/pv/storesession.h +++ b/pv/storesession.h @@ -23,12 +23,17 @@ #include +#include +#include #include - -#include +#include #include +namespace sigrok { +class Output; +} + namespace pv { class SigSession; @@ -50,7 +55,7 @@ public: ~StoreSession(); - std::pair progress() const; + std::pair progress() const; const QString& error() const; @@ -63,18 +68,22 @@ public: private: void store_proc(std::shared_ptr snapshot); -signals: +Q_SIGNALS: void progress_updated(); private: const std::string _file_name; const SigSession &_session; - boost::thread _thread; + std::shared_ptr _output; + + std::thread _thread; + + std::atomic _interrupt; + + std::atomic _units_stored, _unit_count; - mutable boost::mutex _mutex; - uint64_t _units_stored; - uint64_t _unit_count; + mutable std::mutex _mutex; QString _error; };