Daniel Elstner
d370545d60
C++: Use move() and avoid passing containers by value
...
Make use of std::move() to transfer arguments passed in by value.
Take complex container arguments by const reference, as passing
those by value is rather unorthodox even for C++11 style code.
2015-10-26 04:06:12 +01:00
Uwe Hermann
dd13d47a9e
bindings: Use SR_DF_ANALOG, drop SR_DF_ANALOG_OLD support.
...
All SR_DF_ANALOG_OLD packets are automatically converted to SR_DF_ANALOG
in the session already.
2015-10-21 00:29:29 +02:00
Uwe Hermann
5faebab290
SR_DF_ANALOG_OLD and sr_datafeed_analog_old renames.
...
Rename SR_DF_ANALOG to SR_DF_ANALOG_OLD, and 'struct sr_datafeed_analog'
to 'struct sr_datafeed_analog_old'.
2015-10-20 23:32:45 +02:00
Daniel Elstner
ee9953ef12
session: Make event source injection API private
...
Also remove the corresponding functionality from the bindings.
2015-10-17 17:40:42 +02:00
Daniel Elstner
f91cf612df
C++: Add bindings for session stop notification
2015-10-17 17:40:42 +02:00
Daniel Elstner
e2eaf8580a
C++: Wrap resource access API
...
Introduce a ResourceReader delegate class with virtual methods
corresponding to the C callback functions.
2015-10-01 15:44:55 +02:00
Daniel Elstner
5e1fb33469
session-file: Remove old session save API
...
Completely remove the old session save code that has been
superseded by the srzip output module. Also refactor a bit,
plug a number of leaks and tighten the error checking.
2015-10-01 15:44:55 +02:00
Daniel Elstner
000f504f24
classes.cpp: Define _XOPEN_SOURCE for isascii()
...
The GNU libstdc++ headers use isascii(), which is not part of any
POSIX standard. On BSD, this breaks the build. It is however part
of XOPEN, which on Linux is apparently enabled implicitly for C++.
This should fix #649 .
2015-09-13 20:12:12 +02:00
Daniel Elstner
6ec6c43b47
Build: Include <config.h> first in all source files
...
Since Autoconf places some important feature flags only into the
configuration header, it is necessary to include it globally to
guarantee a consistent build.
2015-09-13 18:54:46 +02:00
Daniel Elstner
782b16447b
log: Remove sr_log_logdomain_{get,set} from the API
...
The confusingly named sr_log_logdomain_set() simply set a global
string prefixed to the log message by the default log callback.
This is pretty much useless, misleadingly named, and not used by
either sigrok-cli or PulseView.
2015-09-13 12:08:54 +02:00
Daniel Elstner
b5f0731971
Build: Use angle brackets for enums.cpp include
2015-08-16 18:28:13 +02:00
Soeren Apel
3cd4b38174
Introduce OutputFlag
2015-08-15 23:53:12 +02:00
Soeren Apel
81b3ce374c
Add filename field to sr_output and make it accessible
...
This fixes parts of bug #570 .
2015-07-30 19:21:42 +02:00
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