* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#ifndef PULSEVIEW_PV_VIEW_DECODETRACE_HPP
-#define PULSEVIEW_PV_VIEW_DECODETRACE_HPP
+#ifndef PULSEVIEW_PV_VIEWS_TRACEVIEW_DECODETRACE_HPP
+#define PULSEVIEW_PV_VIEWS_TRACEVIEW_DECODETRACE_HPP
#include "trace.hpp"
#include <QSignalMapper>
#include <pv/binding/decoder.hpp>
+#include <pv/data/signalbase.hpp>
#include <pv/data/decode/row.hpp>
struct srd_channel;
namespace data {
class DecoderStack;
+class SignalBase;
namespace decode {
class Annotation;
class DecoderGroupBox;
}
-namespace view {
+namespace views {
+namespace TraceView {
class DecodeTrace : public Trace
{
static const QColor OutlineColours[16];
public:
- DecodeTrace(pv::Session &session,
- std::shared_ptr<pv::data::DecoderStack> decoder_stack,
+ DecodeTrace(pv::Session &session, std::shared_ptr<data::SignalBase> signalbase,
int index);
bool enabled() const;
const std::shared_ptr<pv::data::DecoderStack>& decoder() const;
+ std::shared_ptr<data::SignalBase> base() const;
+
/**
* Computes the vertical extents of the contents of this row item.
* @return A pair containing the minimum and maximum y-values.
private:
pv::Session &session_;
- std::shared_ptr<pv::data::DecoderStack> decoder_stack_;
+ std::vector<data::decode::Row> visible_rows_;
uint64_t decode_start_, decode_end_;
std::list< std::shared_ptr<pv::binding::Decoder> >
std::list<ChannelSelector> channel_selectors_;
std::vector<pv::widgets::DecoderGroupBox*> decoder_forms_;
- std::vector<data::decode::Row> visible_rows_;
std::map<data::decode::Row, int> row_title_widths_;
int row_height_, max_visible_rows_;
QSignalMapper delete_mapper_, show_hide_mapper_;
};
-} // namespace view
+} // namespace TraceView
+} // namespace views
} // namespace pv
-#endif // PULSEVIEW_PV_VIEW_DECODETRACE_HPP
+#endif // PULSEVIEW_PV_VIEWS_TRACEVIEW_DECODETRACE_HPP