Uwe Hermann [Sat, 15 Jan 2011 01:32:03 +0000 (02:32 +0100)]
Install decoders into a decoders/ subdir.
Use $(datadir)/sigrok/decoders as subdirectory for the protocol decoders
(instead of installing them in the top-level $(datadir)/sigrok), just
as we do for $(datadir)/sigrok/firmware.
Uwe Hermann [Sat, 15 Jan 2011 00:44:41 +0000 (01:44 +0100)]
CLI: Support for running protocol decoders.
Add a new -A | --list-protocol-decoders option to show the list of
protocol decoders we could find.
Add -a | --protocol-decoders to specify a list of decoders that shall
be applied to the datastream. Currently only works for one decoder.
Define DECODERS_DIR, which is the directory where the decoders will be
installed upon 'make install', and where libsigrokdecode_init() will
search for them.
Thanks Olivier Fauchon <redacted> for the initial patch,
merged in slightly different form.
Uwe Hermann [Sat, 8 Jan 2011 16:00:18 +0000 (17:00 +0100)]
Fix compile for Python >= 3.0.
Python docs tells us more about string functions:
"These functions have been renamed to PyBytes_* in Python 3.x. Unless
otherwise noted, the PyBytes functions available in 3.x are aliased to
their PyString_* equivalents to help porting."
(http://docs.python.org/c-api/string.html)
Use #defines to map the new names and fix the compile for Python >= 3.0.
Uwe Hermann [Fri, 23 Apr 2010 23:04:20 +0000 (01:04 +0200)]
Various Python decoder infrastructure improvements.
- Introduce 'struct sigrokdecode_decoder'.
- Decoders are now handled via two C functions:
- sigrokdecode_load_decoder(): Fills a 'struct sigrokdecode_decoder'.
- sigrokdecode_run_decoder(): Runs a decoder function.
- There are now two decoder API functions a script needs to implement:
- register(): Returns a Python dict with certain metadata.
- decode(): Runs the actual decoder code.
- libsigrokdecode: Add and use some more #defines for errors:
- SIGROKDECODE_ERR_ARGS
- SIGROKDECODE_ERR_PYTHON
- Various other smaller Python decode script infrastructure issues.