X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=bindings%2Fcxx%2Fclasses.cpp;h=19b4f8f0c3c5c53ac5472d2faded5b2dc3043b75;hb=032da34b786333a1af811235c5cf29855479f0b6;hp=c915c8a7479920a23069a8c45dfe02983a766456;hpb=c7bc82ffa1b09a228a8395049e2b691cd7bd85f8;p=libsigrok.git diff --git a/bindings/cxx/classes.cpp b/bindings/cxx/classes.cpp index c915c8a7..19b4f8f0 100644 --- a/bindings/cxx/classes.cpp +++ b/bindings/cxx/classes.cpp @@ -77,7 +77,7 @@ Context::Context() : { check(sr_init(&_structure)); - struct sr_dev_driver **driver_list = sr_driver_list(); + struct sr_dev_driver **driver_list = sr_driver_list(_structure); if (driver_list) for (int i = 0; driver_list[i]; i++) _drivers[driver_list[i]->name] = @@ -652,8 +652,7 @@ string Channel::name() void Channel::set_name(string name) { - check(sr_dev_channel_name_set(_parent->_structure, - _structure->index, name.c_str())); + check(sr_dev_channel_name_set(_structure, name.c_str())); } const ChannelType *Channel::type() @@ -668,7 +667,7 @@ bool Channel::enabled() void Channel::set_enabled(bool value) { - check(sr_dev_channel_enable(_parent->_structure, _structure->index, value)); + check(sr_dev_channel_enable(_structure, value)); } unsigned int Channel::index() @@ -889,7 +888,7 @@ Session::Session(shared_ptr context) : _context(context), _saving(false) { - check(sr_session_new(&_structure)); + check(sr_session_new(context->_structure, &_structure)); _context->_session = this; } @@ -899,7 +898,7 @@ Session::Session(shared_ptr context, string filename) : _filename(filename), _saving(false) { - check(sr_session_load(filename.c_str(), &_structure)); + check(sr_session_load(context->_structure, filename.c_str(), &_structure)); GSList *dev_list; check(sr_session_dev_list(_structure, &dev_list)); for (GSList *dev = dev_list; dev; dev = dev->next) @@ -1534,6 +1533,15 @@ string OutputFormat::description() return valid_string(sr_output_description_get(_structure)); } +vector OutputFormat::extensions() +{ + vector exts; + for (const char *const *e = sr_output_extensions_get(_structure); + e && *e; e++) + exts.push_back(*e); + return exts; +} + map> OutputFormat::options() { const struct sr_option **options = sr_output_options_get(_structure);