Commit Graph

114 Commits

Author SHA1 Message Date
Martin Ling 2b51d48b38 C++: Change arguments of Input::send() from std::string to data+length. 2015-04-20 10:12:39 +01:00
Uwe Hermann 032da34b78 sr_driver_list() now takes a context pointer.
This requires sr_hw_cleanup_all() and sanity_check_all_drivers()
to also take a context.

The (runtime) generation of the driver list now happens in sr_init()
and sr_driver_list() always returns that pre-generated list. This fixes
a segfault when (correctly) invoking multiple sr_init() and sr_exit()
calls with different contexts (caught by the unit tests).

This fixes bug #565.
2015-04-07 02:09:56 +02:00
Uwe Hermann c879dca3d7 bindings/cxx/classes.cpp: Fix sr_session_load() invocation. 2015-03-26 01:02:40 +01:00
Uwe Hermann 60f6b00144 bindings/cxx/classes.cpp: Fix a typo. 2015-03-26 01:02:40 +01:00
Martin Ling 61e6e2da45 Make sr_session_new() and sr_session_load() require a context. 2015-03-26 01:02:40 +01:00
Martin Ling 6f1346fbd7 Change API of channel accessor functions to take struct sr_channel *. 2015-03-19 21:57:31 +00:00
Joel Holdsworth 8a174d2342 output: Added preferred file extension field
This fixes parts of bug #541.
2015-01-27 18:05:29 +01:00
Joel Holdsworth c7bc82ffa1 input: Added preferred file extension field
This fixes parts of bug #541.
2015-01-27 18:05:25 +01:00
Martin Ling 48d92e2c2e C++: Fix segfault where input/output options are NULL. 2015-01-18 22:43:02 +00:00
Uwe Hermann 161dc24d84 cxx: Rename include/libsigrok/ to include/libsigrokcxx/. 2015-01-17 20:26:14 +01:00
Uwe Hermann 1b40fdb881 Rename libsigrok.hpp to libsigrokcxx.hpp.
This avoids confusion of libsigrok.h vs. libsigrok.hpp and makes it
clearer that this is the main libsigrokcxx header.
2015-01-17 20:15:38 +01:00
Aurelien Jacobs 24287ea9e3 Add a public API to list available serial ports. 2015-01-03 17:51:51 +01:00
Uwe Hermann e835e8080b bindings: Session::set_trigger(): Fix segfault condition.
sr_session_trigger_set(sess, NULL) is a valid thing to do, meaning that
any trigger shall be removed from the session.

This closes bugs #491 and #496.
2014-11-24 01:11:17 +01:00
Uwe Hermann 624d16100e bindings: Add Session::context(). 2014-11-13 19:15:37 +01:00
Martin Ling 304be4a771 bindings: Add packet constructors. 2014-11-13 18:37:57 +01:00
Martin Ling 9fa5b426ec bindings: Add UserDevice wrapping. 2014-11-13 18:37:57 +01:00
Martin Ling 9d229ecb9e cxx: Implement more of EnumValue in template. 2014-11-12 02:27:04 +01:00
Uwe Hermann 80fe524740 bindings: Use getters now that 'struct sr_dev_inst' is opaque. 2014-11-11 16:55:37 +01:00
Martin Ling d3a401c15b bindings: Remove Device::description(). 2014-10-15 13:44:44 +02:00
Martin Ling 1411f7d8e9 bindings: Add Session::filename() and corresponding SWIG attribute. 2014-10-15 13:44:44 +02:00
Martin Ling f36f7d0282 C++: Don't clear Session::_owned_devices() in Session::remove_devices().
Owned devices are freed only when the session is destroyed.
2014-10-15 13:44:25 +02:00
Martin Ling 98d39b919a Return sensible Device::description() for session and input devices. 2014-09-30 17:32:09 +01:00
Martin Ling ca4e307a93 C++: Fix management of SessionDevice objects. 2014-09-30 16:05:27 +01:00
Martin Ling 584f76a78a C++: Add spaces in Device::description(). 2014-09-30 13:19:27 +01:00
Martin Ling d1075e5acf C++: Expose device serial number and connection ID. 2014-09-30 11:50:07 +01:00
Martin Ling 4c7c4194cb C++: Expose config key capabilities. 2014-09-30 11:07:55 +01:00
Martin Ling 9c51e8ec56 bindings: Update for input API changes. 2014-09-30 01:50:17 +02:00
Aurelien Jacobs 03a4c07aff C++: handle uint32_t SR_CONF keys which contain key capabilities
This adapts the C++ bindings according to commits 584560f and 5827f61.
2014-09-30 00:37:03 +02:00
Martin Ling a4e4745458 C++: Make hardware device instances user owned. 2014-09-14 05:33:24 +01:00
Martin Ling 35114c3394 C++: include <cmath> for NAN. 2014-09-13 20:23:23 +01:00
Martin Ling 3b16108573 bindings: Remove 'get_' prefix from all accessors. 2014-09-11 21:27:32 +01:00
Martin Ling d4cf45e516 C++: Whitespace fix. 2014-09-08 19:27:38 +02:00
Martin Ling cac58676e9 C++: Add SessionDevice class for devices owned by loaded sessions. 2014-09-08 19:27:38 +02:00
Martin Ling be43d5d584 C++: Preserve original channel ordering. 2014-09-08 19:27:38 +02:00
Martin Ling d9eed47d5b C++: Add Configurable::config_check() method. 2014-09-08 19:27:38 +02:00
Martin Ling d54190a363 C++: Add Configurable::config_keys() method. 2014-09-08 19:27:38 +02:00
Martin Ling 59b74d28c9 C++: Make Driver inherit Configurable. 2014-09-08 19:27:38 +02:00
Martin Ling 4f7bcf0ec3 C++: Fix recursion loop in PacketPayload::get_shared_pointer(). 2014-09-08 19:27:37 +02:00
Martin Ling 90e89c2a42 C++: Add UserOwned base template for objects with resources owned by user. 2014-09-02 22:35:16 +02:00
Martin Ling 541c855e1d C++: Rename StructureWrapper to ParentOwned. 2014-09-02 22:35:16 +02:00
Martin Ling bf52cc8cf2 C++: Make StructureWrapper a recurring template, eliminating lots of casts. 2014-09-02 22:35:16 +02:00
Martin Ling ba4eac48d4 C++: Don't spell out arguments to StructureWrapper when not required. 2014-09-02 22:35:16 +02:00
Martin Ling 4cd883a7f3 C++: Fix shared pointer handling for PacketPayload base class. 2014-08-29 20:06:49 +01:00
Martin Ling b31581f8a8 C++: Fix hash table initialisation in map_to_hash_variant. 2014-08-29 17:35:46 +01:00
Martin Ling d01d231487 C++: Fix shared pointer handling for Device base class. 2014-08-29 14:01:51 +01:00
Bert Vermeulen f88c73732c C++: Use sr_input_scan_*() API changes. 2014-08-28 12:19:55 +02:00
Martin Ling 7f5a036750 C++: Update InputFormat::get_options for latest version of input API. 2014-08-26 01:55:41 +02:00
Martin Ling 43942280bb C++: Implement InputFormat::get_options() 2014-08-26 01:55:41 +02:00
Martin Ling 6e5240f418 C++: Correct ownership of InputDevice objects. 2014-08-26 01:55:41 +02:00
Martin Ling ca3291e3ee Update bindings for new input API. 2014-08-26 01:55:41 +02:00
Martin Ling 70d3b20ba6 bindings: update for sr_output_options_{get,free} API change. 2014-08-17 11:44:05 +01:00
Martin Ling 58aa1f8359 Update bindings to use new output API. 2014-07-26 16:03:25 +01:00
Martin Ling 06bd935e16 bindings: Add Channel::get_index() method. 2014-07-24 23:42:53 +01:00
Martin Ling f36ca8893d bindings: Add Device::get_description() method. 2014-07-24 23:42:53 +01:00
Martin Ling e194c01197 bindings: Change return type of config_list to Glib::VariantContainerBase. 2014-07-24 23:42:53 +01:00
Martin Ling 1d67cfb4ea bindings: Revise Session::append() API. 2014-07-24 23:42:53 +01:00
Martin Ling 6be7a7f287 bindings: Support get_channel_groups() on base Device class. 2014-07-24 23:42:53 +01:00
Martin Ling 2928f47d64 bindings: Overhaul packet & payload classes. 2014-07-24 23:42:53 +01:00
Martin Ling 1797a887d7 C++: Fix Packet destructor for packets without payload. 2014-07-24 23:42:51 +01:00
Martin Ling 4178d9712f C++: Add internal lookup to find Channel object from sr_channel *. 2014-07-24 21:00:45 +01:00
Martin Ling 7649683c2a C++: Centralise code for preparing shared pointers. 2014-07-24 21:00:45 +01:00
Martin Ling 90ba83f21d bindings: Add Packet.get_type() method. 2014-07-23 22:45:37 +01:00
Martin Ling 6fa0eb86af Add bindings for getting/setting session trigger. 2014-07-23 22:45:37 +01:00
Martin Ling c23c8659b8 Add C++ bindings. 2014-07-18 20:47:10 +01:00