X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fprop%2Fbinding%2Fdecoderoptions.h;h=a0b8dc4d3880b04495edcb2e8d6726cd17ba095b;hb=6db7315814ee9d2f92d4b326be7c5b9e6e4b789b;hp=e507e87c3accebafe17d356eace0a52dadc6defe;hpb=6e89374a6796f8d5d9cc61b0a2f7e98562a034ae;p=pulseview.git diff --git a/pv/prop/binding/decoderoptions.h b/pv/prop/binding/decoderoptions.h index e507e87..a0b8dc4 100644 --- a/pv/prop/binding/decoderoptions.h +++ b/pv/prop/binding/decoderoptions.h @@ -21,14 +21,19 @@ #ifndef PULSEVIEW_PV_PROP_BINDING_DECODEROPTIONS_H #define PULSEVIEW_PV_PROP_BINDING_DECODEROPTIONS_H -#include - #include "binding.h" +#include + +struct srd_decoder_option; + namespace pv { namespace data { class DecoderStack; +namespace decode { +class Decoder; +} } namespace prop { @@ -37,15 +42,21 @@ namespace binding { class DecoderOptions : public Binding { public: - DecoderOptions(boost::shared_ptr decoder); + DecoderOptions(std::shared_ptr decoder_stack, + std::shared_ptr decoder); private: + static std::shared_ptr bind_enum(const QString &name, + const srd_decoder_option *option, + Property::Getter getter, Property::Setter setter); + GVariant* getter(const char *id); void setter(const char *id, GVariant *value); private: - boost::shared_ptr _decoder; + std::shared_ptr _decoder_stack; + std::shared_ptr _decoder; }; } // binding