]> sigrok.org Git - pulseview.git/blobdiff - pv/data/decode/rowdata.hpp
Backport recent changes from mainline.
[pulseview.git] / pv / data / decode / rowdata.hpp
index 3cb69b3ef1b5ad84ad95581c961c9a4f9694850f..0589ec894eb444fad4f2d0d759c98a1eabc13fc7 100644 (file)
@@ -22,6 +22,8 @@
 
 #include <vector>
 
+#include <libsigrokdecode/libsigrokdecode.h>
+
 #include "annotation.hpp"
 
 using std::vector;
@@ -30,6 +32,8 @@ namespace pv {
 namespace data {
 namespace decode {
 
+class Row;
+
 class RowData
 {
 public:
@@ -39,13 +43,15 @@ public:
        uint64_t get_max_sample() const;
 
        /**
-        * Extracts sorted annotations between two period into a vector.
+        * Extracts annotations between the given sample range into a vector.
+        * Note: The annotations are unsorted and only annotations that fully
+        * fit into the sample range are considered.
         */
        void get_annotation_subset(
                vector<pv::data::decode::Annotation> &dest,
                uint64_t start_sample, uint64_t end_sample) const;
 
-       void push_annotation(const Annotation &a);
+       void emplace_annotation(srd_proto_data *pdata, const Row *row);
 
 private:
        vector<Annotation> annotations_;