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
Uwe Hermann
e0e6aecc20
libsigrok.hpp: Fix incorrect glibmm.h #include.
...
As per upstream docs "#include <glibmm.h>" is the correct usage,
the "glibmm-2.4" directory is handled correctly via pkg-config:
$ pkg-config --cflags glibmm-2.4
-I/usr/include/glibmm-2.4 [...]
2015-01-17 19:59:44 +01:00
Uwe Hermann
afba88adb5
libsigrokcxx: Drop Requires.private entry.
...
libsigrokcxx.pc has a "Requires" field listing "libsigrok" which
will cause libsigrok's "Requires.private" entries to be used/inherited
when 'pkg-config --libs --static libsigrokcxx' is used.
2015-01-17 19:53:44 +01:00
Uwe Hermann
52ff4f6a04
Rename libsigrokxx to the more common libsigrokcxx.
2015-01-17 18:52:43 +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
b8721d7cf0
bindings: Fix out-of-tree build.
...
This closes #473 .
2014-11-14 20:01:12 +01:00
Martin Ling
d2a929ab85
bindings: Fix enums.py compatibility with Python 3.
2014-11-13 20:38:56 +00: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
b2db9f3bbe
bindings: Add QuantityFlag::mask_from_flags() method.
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
7a36ceacb9
bindings: Support per-language extensions to EnumValue wrappers.
2014-11-12 02:27:05 +01:00
Martin Ling
e480df0c45
bindings: Expose ConfigKey::identifier as an attribute.
2014-11-12 02:27:04 +01:00
Martin Ling
189461b251
bindings: Expose EnumValue::id and EnumValue::name as attributes.
2014-11-12 02:27:04 +01:00
Martin Ling
fe4096fde6
bindings: Wrap EnumValue base class.
2014-11-12 02:27:04 +01:00
Martin Ling
0bc1a7613a
bindings: Rename ConfigKey::get(string) to get_by_identifier().
...
The polymorphism with get(int) causes problems here when a char * is passed.
2014-11-12 02:27:04 +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
73a1eb017b
bindings: Add accessor to obtain parent object.
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
Jens Steinhauser
174bf146e5
bindings: Better error handling in enumeration get() function.
...
Prior to this patch a call to get() with an invalid enumeration value
would raise an exception that would, for example, terminate the python
interpreter, whereas now the exception is handled and translated into a
proper python exception.
2014-10-07 15:15:17 +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
db560903d1
C++: use constructors for default argument declarations.
2014-09-13 20:23:46 +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
b4ed33a776
C++: Implement Deleter pattern in UserOwned template.
2014-09-02 22:35:16 +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
0d0170ae9e
C++: Fix duplicated shared_ptr creation.
2014-09-02 21:33:47 +02:00
Martin Ling
3bc172a61f
C++: Remove erroneous stray method.
2014-09-02 21:33:47 +02:00
Martin Ling
78132e2a13
C++: Add sanity checks in StructureWrapper.
2014-08-31 19:03:31 +02:00
Marcus Comstedt
d92de05ad1
C++: Provide fallbacks for missing stoi/stod functions
...
Notably, Android does not provide these functions. The fallback
implementation is based on the one in the GNU ISO C++ Library.
2014-08-31 13:31:35 +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
Marcus Comstedt
33c84e8197
Makefile.am: Fix out-of-tree build for C++ and Java bindings
2014-08-17 12:58:39 +02:00
Martin Ling
70d3b20ba6
bindings: update for sr_output_options_{get,free} API change.
2014-08-17 11:44:05 +01:00
Uwe Hermann
ac0db24ad4
Doxygen: Silence Doxygen warnings by default.
...
This allows for a clean build per default. Developers can enable
those switches while writing documentation to get a few useful
warnings.
2014-08-10 18:16:07 +02:00
Martin Ling
b6f411ac4e
C++: Add parameter documentation and additional method descriptions.
2014-08-10 15:47:14 +02:00
Martin Ling
bd4fda2407
bindings: Transfer C++ documentation strings to Python and Java wrappers.
2014-08-10 15:47:13 +02:00
Martin Ling
84c870852a
C++ bindings: Attach documentation to enum wrapper classes.
2014-08-10 15:47:13 +02:00
Martin Ling
3532ed0125
C++ bindings: Reimplement enums.py using doxygen XML output instead of gccxml.
2014-08-10 15:47:13 +02: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
7009a3921a
C++: Fix leak of GVariant in ConfigKey::parse_string().
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
07443fd204
Add Doxyfile for C++ bindings and adaptations to C++ header file.
2014-07-23 22:45:37 +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
Jens Steinhauser
c6036f755a
C++ bindings: Make enums.py work with newer versions of pygccxml.
2014-07-22 21:06:16 +02:00
Bert Vermeulen
6884b52bde
bindings: Filter out various pygccxml noise.
2014-07-19 19:48:01 +02:00
Martin Ling
c23c8659b8
Add C++ bindings.
2014-07-18 20:47:10 +01:00