Make member variable underscores a suffix instead of a prefix
[pulseview.git] / pv / view / logicsignal.h
index 0f6714cf0ce11661c58e0c264d6973e5350b6753..79bbe396967bb0339b1f8eb8d9be67e654eccd8a 100644 (file)
 
 class QToolBar;
 
+namespace sigrok {
+       class Device;
+       class TriggerMatchType;
+}
+
 namespace pv {
 
 namespace data {
@@ -40,6 +45,9 @@ class LogicSignal : public Signal
        Q_OBJECT
 
 private:
+       static const int SignalHeight;
+       static const int SignalMargin;
+
        static const float Oversampling;
 
        static const QColor EdgeColour;
@@ -49,8 +57,9 @@ private:
        static const QColor SignalColours[10];
 
 public:
-       LogicSignal(std::shared_ptr<pv::device::DevInst> dev_inst,
-               const sr_channel *const channel,
+       LogicSignal(pv::SigSession &session,
+               std::shared_ptr<sigrok::Device> device,
+               std::shared_ptr<sigrok::Channel> channel,
                std::shared_ptr<pv::data::Logic> data);
 
        virtual ~LogicSignal();
@@ -59,6 +68,12 @@ public:
 
        std::shared_ptr<pv::data::Logic> logic_data() const;
 
+       /**
+        * Computes the vertical extents of the contents of this row item.
+        * @return A pair containing the minimum and maximum y-values.
+        */
+       std::pair<int, int> v_extents() const;
+
        /**
         * Paints the background layer of the signal with a QPainter
         * @param p the QPainter to paint into.
@@ -83,24 +98,26 @@ private:
 
        void init_trigger_actions(QWidget *parent);
 
-       QAction* match_action(int match);
-       int action_match(QAction *action);
+       QAction* match_action(const sigrok::TriggerMatchType *match);
+       const sigrok::TriggerMatchType *action_match(QAction *action);
        void populate_popup_form(QWidget *parent, QFormLayout *form);
+       void modify_trigger();
 
 private Q_SLOTS:
        void on_trigger();
 
 private:
-       std::shared_ptr<pv::data::Logic> _data;
-
-       int _trigger_match;
-       QToolBar *_trigger_bar;
-       QAction *_trigger_none;
-       QAction *_trigger_rising;
-       QAction *_trigger_high;
-       QAction *_trigger_falling;
-       QAction *_trigger_low;
-       QAction *_trigger_change;
+       std::shared_ptr<sigrok::Device> device_;
+       std::shared_ptr<pv::data::Logic> data_;
+
+       const sigrok::TriggerMatchType *trigger_match_;
+       QToolBar *trigger_bar_;
+       QAction *trigger_none_;
+       QAction *trigger_rising_;
+       QAction *trigger_high_;
+       QAction *trigger_falling_;
+       QAction *trigger_low_;
+       QAction *trigger_change_;
 };
 
 } // namespace view