+ QString error_message() const;
+
+ const list<data::DecodeChannel> get_channels() const;
+ void auto_assign_signals();
+ void assign_signal(const uint16_t channel_id, const SignalBase *signal);
+
+ void set_initial_pin_state(const uint16_t channel_id, const int init_state);
+
+ vector<decode::Row> visible_rows() const;
+
+ /**
+ * Extracts sorted annotations between two period into a vector.
+ */
+ void get_annotation_subset(
+ vector<pv::data::decode::Annotation> &dest,
+ const decode::Row &row, uint64_t start_sample,
+ uint64_t end_sample) const;
+
+private:
+ void update_channel_list();
+