Commit Graph

57 Commits

Author SHA1 Message Date
Uwe Hermann 0f8522bf74 Project-wide consistent naming for #include guards.
Document the naming scheme in HACKING.
2012-02-05 15:05:13 +01:00
Uwe Hermann 1a081ca67d sr: Mark API functions with SR_API/SR_PRIV.
Use SR_API to mark public API symbols, and SR_PRIV for private symbols.

Variables and functions marked 'static' are private already and don't
need SR_PRIV. However, functions which are not static (because they need
to be used in other libsigrok-internal files) but are also not meant to
be part of the public libsigrok API, must use SR_PRIV.

This uses the 'visibility' feature of gcc (requires gcc >= 4.0).

Details: http://gcc.gnu.org/wiki/Visibility
2012-02-02 00:03:17 +01:00
Uwe Hermann 69890f7399 sr: Eliminate usb/serial instances from API.
The API should be generic and only provide sr_device_instance_new() and
friends, but not sr_usb_device_instance_new(), sr_serial_device_instance_new(),
or others for other device types we may have in the future. The
frontends shouldn't have to know or care about this implementation detail.

This also fixes the problem that parts of sigrok.h contained
'#ifdef HAVE_LIBUSB_1_0' and such, which is even less desirable for the API.

The usb/serial instance specifics are now private, and each driver that
needs them keeps a pointer in its driver-specific context.
2012-01-31 02:04:35 +01:00
Anatoly Sokolov fd9836bfab Add sr_device_get_info 2012-01-30 13:56:38 +01:00
Uwe Hermann e0508e6799 sr: session: Make most functions return int.
This allows us to return error codes etc.

Add a little more error handling.
2012-01-07 17:11:50 +01:00
Uwe Hermann 3b7c8f54fc sr: Drop some obsolete and commented out code. 2012-01-02 14:25:52 +01:00
Kristoffer Sjöberg 464d12c72a Move the probe naming to the creator of the device, and let each driver name its own probes. 2011-12-29 17:04:31 +01:00
Uwe Hermann 155d1012f1 sigrok-proto.h: Drop obsolete prototype, move other one. 2011-12-28 21:37:37 +01:00
Uwe Hermann 08d4cc1d14 device: Make some parameters const. 2011-12-28 21:34:37 +01:00
Uwe Hermann 0e3b143994 device: Change some functions to return int.
The callers of these functions are yet to be changed so that they
actually check the return values and handle errors appropriately.
2011-12-28 17:26:19 +01:00
Uwe Hermann 15278f3e9c datastore.c: Improve error handling and docs.
- Add Doxygen comments for all functions (some TODOs remain).

 - Check for invalid input parameters (such as NULL pointers etc).

 - Return SR_ERR_ARG upon invalid input parameters.

 - Make sr_datastore_put() return int instead of void, so we can pass
   an error code (SR_OK, SR_ERR_MALLOC, and so on) to the caller.
2011-12-26 21:26:02 +01:00
Uwe Hermann 488a13b110 Improve sr_filter_probes error handling and docs.
- Much more elaborate doxygen comments for the function and its
   parameters, allowed input values, and so on.

 - Make 'probelist' const, the function doesn't modify it.

 - Check for invalid inputs such as NULL pointers.

 - Use g_try_malloc() and g_free() for the output buffer. Document who
   is expected to g_free() the buffer.
2011-12-22 14:16:07 +01:00
Bert Vermeulen f64c14141b fix CLI size string specification
accept "hz" as optional qualifier but nothing else
properly return an error instead of quietly returning zero size
2011-11-27 19:33:07 +01:00
Gareth McMullin 4d436e71ba Changed SR_T_NULL to SR_T_BOOL and adjusted RLE option. 2011-11-19 13:41:41 +13:00
Bert Vermeulen 60eb1eb582 fix parameter type 2011-06-19 00:55:36 +02:00
Bert Vermeulen 8722c31e26 better cleanup of device/plugin resources 2011-06-05 01:51:49 +02:00
Uwe Hermann 1352eeddd4 libsigrok/cli: Implement loglevel support.
libsigrok can now be told at which loglevel to work, i.e., how many
debug/error/warning output to generate. You can also query the current
loglevel.

In sigrok-cli it is now possible to set the loglevel via -l. For example:

 - Disable all output: sigrok-cli -l 0
 - Only show errors: sigrok-cli -l 1
 - Show errors, warnings, info, and debug messages: sigrok-cli -l 4
2011-05-05 13:06:13 +02:00
Uwe Hermann 8bb416becf Kill unused functions (avoid namespace pollution). 2011-03-03 20:24:25 +01:00
Uwe Hermann cd009d5561 sr_exit(): Return int to be able to report errors. 2011-03-03 20:24:24 +01:00
Uwe Hermann 809c5f2011 Add sr_ prefix for analog stuff some structs. 2011-02-20 21:16:24 +01:00
Uwe Hermann a887e3da97 Add sr_ prefix to receive_data_callback typedef.
Also, drop obsolete add_source() prototype from sigrok-cli.h.
2011-02-20 21:16:24 +01:00
Uwe Hermann 13b0573369 Add sr_ prefix to datafeed_callback typedef. 2011-02-20 21:16:23 +01:00
Uwe Hermann e5551f657d Drop obsolete source_callback_*(). 2011-02-20 21:16:23 +01:00
Uwe Hermann c25d2039de Add sr_ prefix to filter_probes(). 2011-02-20 21:16:23 +01:00
Uwe Hermann 8225e92175 Constify a few more 'char *' parameters. 2011-02-20 21:16:23 +01:00
Uwe Hermann 8233ff53ae Make load_hwplugins() private. 2011-02-20 21:16:22 +01:00
Uwe Hermann ee4b6342af Add sr_ prefix to list_hwplugins(). 2011-02-20 21:16:22 +01:00
Uwe Hermann 6f1be0a2d4 Add sr_ prefix to session_{add,remove}. 2011-02-20 21:16:22 +01:00
Uwe Hermann a65de0309b Add sr_ prefix for hwcap structs/functions. 2011-02-20 21:16:19 +01:00
Uwe Hermann a46d35febf Drop prototype for non-existant make_metadata(). 2011-02-20 21:00:32 +01:00
Uwe Hermann 03dbc020cd Rename probe_find() to sr_device_probe_find(). 2011-02-08 22:28:03 +01:00
Uwe Hermann c49111295f Add sr_ prefix for datastore API functions. 2011-02-08 22:28:02 +01:00
Uwe Hermann 2bf4aca64a Add sr_ prefix for device related API functions. 2011-02-08 22:28:02 +01:00
Uwe Hermann 8a2efef2d5 Add sr_ prefix to session related API functions. 2011-02-08 22:28:00 +01:00
Uwe Hermann 2872d21ebc Add sr_ prefix for 'struct session'. 2011-02-08 22:27:58 +01:00
Uwe Hermann 1afe89897c Add sr_ prefix for 'struct probe'. 2011-02-08 22:27:58 +01:00
Uwe Hermann 22b0238344 Fix build when no libusb-LA is compiled.
Until now the build would break if the user doesn't enable at least one
of the libusb1.0-based LAs. I.e., you could not compile only OLS, or
only the demo driver.
2011-02-02 10:25:52 +01:00
Bert Vermeulen 7d65887435 implement session loading based on a virtual device driver 2011-01-31 22:34:14 +01:00
Bert Vermeulen 40f5ddac01 move samplerate/period printers and parsers into libsigrok 2011-01-31 22:29:40 +01:00
Uwe Hermann 01d9dc35ad Consistently use _exit prefix for functions. 2011-01-30 19:26:32 +01:00
Uwe Hermann 6c29007211 Prefixes for *_device_instance. 2011-01-30 18:32:59 +01:00
Uwe Hermann 5c2d46d1db Prefix device structs with sr_. 2011-01-30 18:32:58 +01:00
Uwe Hermann b9c735a275 Prefix datafeed structs with sr_. 2011-01-30 18:32:57 +01:00
Uwe Hermann d32d961d17 get_sr_device_instance() -> sr_get_device_instance(). 2011-01-30 18:32:56 +01:00
Uwe Hermann a00ba01228 Change all sigrok_ prefixes to sr_. 2011-01-30 18:32:55 +01:00
Uwe Hermann f50f3f40d9 Add sr_ prefix to input/output structs. 2011-01-30 18:32:54 +01:00
Bert Vermeulen 544a458212 move session main loop stuff into libsigrok (session_run) 2011-01-30 17:12:54 +01:00
Bert Vermeulen e54bcdc5d1 cli: don't initialize and scan for hardware unless needed
If the -d <plugin> option is used, only initialize the specified plugin.
2011-01-24 02:49:14 +01:00
Bert Vermeulen 6ea7e23526 Revert "re-enable filter and datastore for DF_LOGIC"
This reverts commit 23da86dfc0a89c7ab951fea31a318a493830eb69.
2011-01-22 14:18:31 +01:00
Daniel Ribeiro 62eeeb171b re-enable filter and datastore for DF_LOGIC
This definitely isn't the proper fix, but it should allow DF_LOGIC
and DF_ANALOG to coexist.
2011-01-21 18:04:09 -02:00