X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fdata%2Fdecode%2Fdecoder.h;h=4eeb09e1af01718091ef3456604b886aea548a21;hb=6ac6242b25cfbd4df14abe7580adc9d0f4cffe43;hp=e9c5726f988cc67321abb0cac629b90f999d61aa;hpb=7491a29f33471b38e161b3254f4d8e708b05f929;p=pulseview.git diff --git a/pv/data/decode/decoder.h b/pv/data/decode/decoder.h index e9c5726..4eeb09e 100644 --- a/pv/data/decode/decoder.h +++ b/pv/data/decode/decoder.h @@ -22,14 +22,14 @@ #define PULSEVIEW_PV_DATA_DECODE_DECODER_H #include - -#include +#include +#include #include struct srd_decoder; struct srd_decoder_inst; -struct srd_probe; +struct srd_channel; struct srd_session; namespace pv { @@ -39,6 +39,9 @@ class LogicSignal; } namespace data { + +class Logic; + namespace decode { class Decoder @@ -50,23 +53,33 @@ public: const srd_decoder* decoder() const; - const std::map >& probes() const; - void set_probes(std::map > probes); + bool shown() const; + void show(bool show = true); + + const std::map >& channels() const; + void set_channels(std::map > channels); - const GHashTable* options() const; + const std::map& options() const; void set_option(const char *id, GVariant *value); + bool have_required_channels() const; + srd_decoder_inst* create_decoder_inst( - srd_session *const session) const; + srd_session *session, int unit_size) const; + + std::set< std::shared_ptr > get_data(); private: const srd_decoder *const _decoder; - std::map > - _probes; - GHashTable *_options; + + bool _shown; + + std::map > + _channels; + std::map _options; }; } // namespace decode