X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fbinding%2Fdecoder.cpp;h=28f42a08b38027ca87a9e42a5c6bec84e31c7a09;hp=dd5716027aeb492d47ab298c3f506f7f028148cc;hb=946b52e1f0e0520415c3653cc6ea9d083718f76d;hpb=3cc9ad7b867853315473df611612c562d562ed8a diff --git a/pv/binding/decoder.cpp b/pv/binding/decoder.cpp index dd571602..28f42a08 100644 --- a/pv/binding/decoder.cpp +++ b/pv/binding/decoder.cpp @@ -14,8 +14,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * along with this program; if not, see . */ #include @@ -24,8 +23,8 @@ #include -#include #include +#include #include #include #include @@ -49,9 +48,9 @@ namespace pv { namespace binding { Decoder::Decoder( - shared_ptr decoder_stack, + shared_ptr decode_signal, shared_ptr decoder) : - decoder_stack_(decoder_stack), + decode_signal_(decode_signal), decoder_(decoder) { assert(decoder_); @@ -59,8 +58,7 @@ Decoder::Decoder( const srd_decoder *const dec = decoder_->decoder(); assert(dec); - for (GSList *l = dec->options; l; l = l->next) - { + for (GSList *l = dec->options; l; l = l->next) { const srd_decoder_option *const opt = (srd_decoder_option*)l->data; @@ -74,16 +72,16 @@ Decoder::Decoder( shared_ptr prop; if (opt->values) - prop = bind_enum(name, opt, get, set); + prop = bind_enum(name, "", opt, get, set); else if (g_variant_is_of_type(opt->def, G_VARIANT_TYPE("d"))) - prop = shared_ptr(new Double(name, 2, "", + prop = shared_ptr(new Double(name, "", 2, "", none, none, get, set)); else if (g_variant_is_of_type(opt->def, G_VARIANT_TYPE("x"))) prop = shared_ptr( - new Int(name, "", none, get, set)); + new Int(name, "", "", none, get, set)); else if (g_variant_is_of_type(opt->def, G_VARIANT_TYPE("s"))) prop = shared_ptr( - new String(name, get, set)); + new String(name, "", get, set)); else continue; @@ -92,7 +90,8 @@ Decoder::Decoder( } shared_ptr Decoder::bind_enum( - const QString &name, const srd_decoder_option *option, + const QString &name, const QString &desc, + const srd_decoder_option *option, Property::Getter getter, Property::Setter setter) { vector< pair > values; @@ -101,12 +100,12 @@ shared_ptr Decoder::bind_enum( values.push_back(make_pair(var, print_gvariant(var))); } - return shared_ptr(new Enum(name, values, getter, setter)); + return shared_ptr(new Enum(name, desc, values, getter, setter)); } Glib::VariantBase Decoder::getter(const char *id) { - GVariant *val = NULL; + GVariant *val = nullptr; assert(decoder_); @@ -116,13 +115,11 @@ Glib::VariantBase Decoder::getter(const char *id) if (iter != options.end()) val = (*iter).second; - else - { + else { assert(decoder_->decoder()); // Get the default value if not - for (GSList *l = decoder_->decoder()->options; l; l = l->next) - { + for (GSList *l = decoder_->decoder()->options; l; l = l->next) { const srd_decoder_option *const opt = (srd_decoder_option*)l->data; if (strcmp(opt->id, id) == 0) { @@ -132,10 +129,7 @@ Glib::VariantBase Decoder::getter(const char *id) } } - if (val) - return Glib::VariantBase(val, true); - else - return Glib::VariantBase(); + return (val) ? Glib::VariantBase(val, true) : Glib::VariantBase(); } void Decoder::setter(const char *id, Glib::VariantBase value) @@ -143,9 +137,9 @@ void Decoder::setter(const char *id, Glib::VariantBase value) assert(decoder_); decoder_->set_option(id, value.gobj()); - assert(decoder_stack_); - decoder_stack_->begin_decode(); + assert(decode_signal_); + decode_signal_->begin_decode(); } -} // binding -} // pv +} // namespace binding +} // namespace pv