X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fprop%2Fbinding%2Fdecoderoptions.h;h=a95bc33f3748b854220febdfd1ccdf10bbc60c59;hb=e8d009288de28cb194bc7964f96677c2baf900c9;hp=c08f1017fb2a822106f21a603f7be76768d66050;hpb=5b1994c45194a95069dfcadf637723f3db8249da;p=pulseview.git diff --git a/pv/prop/binding/decoderoptions.h b/pv/prop/binding/decoderoptions.h index c08f101..a95bc33 100644 --- a/pv/prop/binding/decoderoptions.h +++ b/pv/prop/binding/decoderoptions.h @@ -23,6 +23,10 @@ #include "binding.h" +#include + +struct srd_decoder_option; + namespace pv { namespace data { @@ -38,17 +42,21 @@ namespace binding { class DecoderOptions : public Binding { public: - DecoderOptions(boost::shared_ptr decoder_stack, - boost::shared_ptr decoder); + DecoderOptions(std::shared_ptr decoder_stack, + std::shared_ptr decoder); private: - GVariant* getter(const char *id); + static std::shared_ptr bind_enum(const QString &name, + const srd_decoder_option *option, + Property::Getter getter, Property::Setter setter); + + Glib::VariantBase getter(const char *id); - void setter(const char *id, GVariant *value); + void setter(const char *id, Glib::VariantBase value); private: - boost::shared_ptr _decoder_stack; - boost::shared_ptr _decoder; + std::shared_ptr _decoder_stack; + std::shared_ptr _decoder; }; } // binding