uint16_t id; ///< Global numerical ID for the decode channels in the stack
uint16_t bit_id; ///< Tells which bit within a sample represents this channel
const bool is_optional;
- const pv::data::SignalBase *assigned_signal;
+ shared_ptr<const pv::data::SignalBase> assigned_signal;
const QString name, desc;
int initial_pin_state;
const shared_ptr<Decoder> decoder_;
const srd_channel *pdch_;
};
+struct DecoderLogicOutputChannel {
+ DecoderLogicOutputChannel (QString id, QString desc) :
+ id(id), desc(desc) {};
+ QString id, desc;
+};
+
struct DecodeBinaryClassInfo
{
uint32_t bin_class_id;
uint32_t get_binary_class_count() const;
const DecodeBinaryClassInfo* get_binary_class(uint32_t id) const;
+ bool has_logic_output() const;
+ const vector<DecoderLogicOutputChannel> logic_output_channels() const;
+
Q_SIGNALS:
void annotation_visibility_changed();