]> sigrok.org Git - pulseview.git/blobdiff - pv/session.hpp
Fix some signal/slot bugs
[pulseview.git] / pv / session.hpp
index ac3a076d2fb8d5e0edda93c86a849b5e16310847..77a20e3cfa106031e8f4d6f8f42d3c515a19606f 100644 (file)
@@ -32,7 +32,6 @@
 #include <set>
 #include <string>
 #include <thread>
-#include <unordered_set>
 #include <vector>
 
 #include <QObject>
@@ -108,6 +107,7 @@ namespace views {
 class ViewBase;
 }
 
+using pv::views::ViewType;
 
 class Session : public QObject
 {
@@ -189,6 +189,8 @@ public:
        bool has_view(shared_ptr<views::ViewBase> view);
 
        const vector< shared_ptr<data::SignalBase> > signalbases() const;
+       void add_generated_signal(shared_ptr<data::SignalBase> signal);
+       void remove_generated_signal(shared_ptr<data::SignalBase> signal);
 
        bool all_segments_complete(uint32_t segment_id) const;
 
@@ -251,7 +253,7 @@ Q_SIGNALS:
 
        void data_received();
 
-       void add_view(views::ViewType type, Session *session);
+       void add_view(ViewType type, Session *session);
 
 public Q_SLOTS:
        void on_data_saved();
@@ -261,6 +263,8 @@ public Q_SLOTS:
 #endif
 
 private:
+       bool shutting_down_;
+
        DeviceManager &device_manager_;
        shared_ptr<devices::Device> device_;
        QString default_name_, name_;
@@ -270,13 +274,13 @@ private:
 
        shared_ptr<pv::toolbars::MainBar> main_bar_;
 
-       mutable mutex sampling_mutex_; //!< Protects access to capture_state_.
+       mutable mutex sampling_mutex_; //!< Protects access to capture_state_
        capture_state capture_state_;
 
        vector< shared_ptr<data::SignalBase> > signalbases_;
        unordered_set< shared_ptr<data::SignalData> > all_signal_data_;
 
-       /// trigger_list_ contains pairs of <segment_id, timestamp> values.
+       /// trigger_list_ contains pairs of <segment_id, timestamp> values
        vector< std::pair<uint32_t, util::Timestamp> > trigger_list_;
 
        mutable recursive_mutex data_mutex_;