namespace pv {
namespace data {
+class Analog;
+class Logic;
+class SignalData;
+
class SignalBase : public QObject
{
Q_OBJECT
*/
QColor bgcolour() const;
+ /**
+ * Sets the internal data object.
+ */
+ void set_data(std::shared_ptr<pv::data::SignalData> data);
+
+ /**
+ * Get the internal data as analog data object in case of analog type.
+ */
+ std::shared_ptr<pv::data::Analog> analog_data() const;
+
+ /**
+ * Get the internal data as logic data object in case of logic type.
+ */
+ std::shared_ptr<pv::data::Logic> logic_data() const;
+
+
Q_SIGNALS:
void enabled_changed(const bool &value);
private:
std::shared_ptr<sigrok::Channel> channel_;
+ std::shared_ptr<pv::data::SignalData> data_;
+
QString name_;
QColor colour_, bgcolour_;
};