]> sigrok.org Git - pulseview.git/blobdiff - pv/session.hpp
Session: Use ordered container to preserve DecodeTrace order
[pulseview.git] / pv / session.hpp
index a4aaf6aabbcc8c94bf32e446375e8b9218a36b26..095c4dd0217dd51f490c3d4d99bbc3d952b773b9 100644 (file)
@@ -50,7 +50,6 @@
 
 
 using std::function;
-using std::list;
 using std::map;
 using std::mutex;
 using std::recursive_mutex;
@@ -139,7 +138,7 @@ public:
 
        void set_name(QString name);
 
-       const list< shared_ptr<views::ViewBase> > views() const;
+       const vector< shared_ptr<views::ViewBase> > views() const;
 
        shared_ptr<views::ViewBase> main_view() const;
 
@@ -172,6 +171,8 @@ public:
 
        void set_default_device();
 
+       bool using_file_device() const;
+
        void load_init_file(const string &file_name, const string &format,
                const string &setup_file_name);
 
@@ -198,7 +199,7 @@ public:
 
        bool has_view(shared_ptr<views::ViewBase> view);
 
-       const unordered_set< shared_ptr<data::SignalBase> > signalbases() const;
+       const vector< shared_ptr<data::SignalBase> > signalbases() const;
 
        bool all_segments_complete(uint32_t segment_id) const;
 
@@ -264,8 +265,7 @@ Q_SIGNALS:
 
        void data_received();
 
-       void add_view(const QString &title, views::ViewType type,
-               Session *session);
+       void add_view(views::ViewType type, Session *session);
 
 public Q_SLOTS:
        void on_data_saved();
@@ -279,7 +279,7 @@ private:
        shared_ptr<devices::Device> device_;
        QString default_name_, name_;
 
-       list< shared_ptr<views::ViewBase> > views_;
+       vector< shared_ptr<views::ViewBase> > views_;
        shared_ptr<pv::views::ViewBase> main_view_;
 
        shared_ptr<pv::toolbars::MainBar> main_bar_;
@@ -287,7 +287,7 @@ private:
        mutable mutex sampling_mutex_; //!< Protects access to capture_state_.
        capture_state capture_state_;
 
-       unordered_set< shared_ptr<data::SignalBase> > signalbases_;
+       vector< shared_ptr<data::SignalBase> > signalbases_;
        unordered_set< shared_ptr<data::SignalData> > all_signal_data_;
 
        /// trigger_list_ contains pairs of <segment_id, timestamp> values.