]> sigrok.org Git - pulseview.git/blobdiff - pv/data/decoderstack.h
Begin a new decode session when a new frame begins
[pulseview.git] / pv / data / decoderstack.h
index 80ad64cdfebf90398213d801ef184f128cc7d4bd..ad2a17b6b593c79b0ddbeff9c70823fb5d508d3c 100644 (file)
@@ -45,6 +45,8 @@ class TwoDecoderStack;
 
 namespace pv {
 
+class SigSession;
+
 namespace view {
 class LogicSignal;
 }
@@ -68,7 +70,8 @@ private:
        static const int64_t DecodeChunkLength;
 
 public:
-       DecoderStack(const srd_decoder *const decoder);
+       DecoderStack(pv::SigSession &_session,
+               const srd_decoder *const decoder);
 
        virtual ~DecoderStack();
 
@@ -78,7 +81,7 @@ public:
 
        int64_t samples_decoded() const;
 
-       std::vector<decode::Row> get_rows() const;
+       std::vector<decode::Row> get_visible_rows() const;
 
        /**
         * Extracts sorted annotations between two period into a vector.
@@ -102,10 +105,14 @@ private:
        static void annotation_callback(srd_proto_data *pdata,
                void *decoder);
 
+private slots:
+       void on_new_frame();
+
 signals:
        void new_decode_data();
 
 private:
+       pv::SigSession &_session;
 
        /**
         * This mutex prevents more than one decode operation occuring