X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdata%2Fdecode%2Frowdata.hpp;h=0012acd4523ecfc7339a5a30809ab78de2ddef57;hp=820959d454bbc6c2094f129a52299046c8cba995;hb=6a26fc4417798ab21654197e105e707a14d462f0;hpb=7a01bd3654ed046216308fa64edfd79be7cd525f
diff --git a/pv/data/decode/rowdata.hpp b/pv/data/decode/rowdata.hpp
index 820959d4..0012acd4 100644
--- a/pv/data/decode/rowdata.hpp
+++ b/pv/data/decode/rowdata.hpp
@@ -14,8 +14,7 @@
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ * along with this program; if not, see .
*/
#ifndef PULSEVIEW_PV_DATA_DECODE_ROWDATA_HPP
@@ -23,35 +22,46 @@
#include
-#include "annotation.hpp"
+#include
+
+#include
+
+using std::vector;
namespace pv {
namespace data {
namespace decode {
+class Row;
+
class RowData
{
public:
- RowData();
+ RowData(Row* row);
public:
uint64_t get_max_sample() const;
+ uint64_t get_annotation_count() 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(
- std::vector &dest,
+ vector &dest,
uint64_t start_sample, uint64_t end_sample) const;
- void push_annotation(const Annotation &a);
+ void emplace_annotation(srd_proto_data *pdata);
private:
- std::vector annotations_;
+ vector annotations_;
+ const Row* row_;
};
-}
-} // data
-} // pv
+} // namespace decode
+} // namespace data
+} // namespace pv
#endif // PULSEVIEW_PV_DATA_DECODE_ROWDATA_HPP