#ifndef PULSEVIEW_PV_VIEW_HEADERITEM_H
#define PULSEVIEW_PV_VIEW_HEADERITEM_H
+#include <memory>
+
#include "selectableitem.h"
namespace pv {
class RowItemOwner;
-class RowItem : public SelectableItem
+class RowItem : public SelectableItem,
+ public std::enable_shared_from_this<pv::view::RowItem>
{
Q_OBJECT
*/
QPoint point() const;
+ /**
+ * Computes the vertical extents of the contents of this row item.
+ * @return A pair containing the minimum and maximum y-values.
+ */
+ virtual std::pair<int, int> v_extents() const = 0;
+
/**
* Paints the background layer of the trace with a QPainter
* @param p the QPainter to paint into.