X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fview%2Fdecodesignal.h;h=a9ff265e0569ad59cea4b7be869347180d8310ed;hp=755fefe6e5c0efca893b38743d8a6720806a5d87;hb=06bb4e6a55f5f6983d94fef2b25afc0a70f7b8d9;hpb=119aff65d8ad0c4cdaff32d9b68cee00d90a5f35 diff --git a/pv/view/decodesignal.h b/pv/view/decodesignal.h index 755fefe6..a9ff265e 100644 --- a/pv/view/decodesignal.h +++ b/pv/view/decodesignal.h @@ -35,26 +35,36 @@ namespace view { class DecodeSignal : public Trace { + Q_OBJECT + +private: + static const QColor DecodeColours[4]; + public: DecodeSignal(pv::SigSession &session, - boost::shared_ptr decoder); + boost::shared_ptr decoder, int index); void init_context_bar_actions(QWidget *parent); bool enabled() const; + void set_view(pv::view::View *view); + /** - * Paints the trace with a QPainter + * Paints the background layer of the trace with a QPainter + * @param p the QPainter to paint into. + * @param left the x-coordinate of the left edge of the signal. + * @param right the x-coordinate of the right edge of the signal. + **/ + void paint_back(QPainter &p, int left, int right); + + /** + * Paints the mid-layer of the trace with a QPainter * @param p the QPainter to paint into. - * @param y the y-coordinate to draw the signal at * @param left the x-coordinate of the left edge of the signal * @param right the x-coordinate of the right edge of the signal - * @param scale the scale in seconds per pixel. - * @param offset the time to show at the left hand edge of - * the view in seconds. **/ - void paint(QPainter &p, int y, int left, int right, - double scale, double offset); + void paint_mid(QPainter &p, int left, int right); const std::list get_context_bar_actions(); @@ -68,6 +78,8 @@ private: private: boost::shared_ptr _decoder; + + uint64_t _decode_start, _decode_end; }; } // namespace view