]> sigrok.org Git - libsigrokdecode.git/log
libsigrokdecode.git
12 years agosrd: Update mx25lxx05d.py to new API.
Uwe Hermann [Thu, 5 Jan 2012 19:58:52 +0000 (20:58 +0100)]
srd: Update mx25lxx05d.py to new API.

12 years agosrd: Update nunchuk decoder to new API.
Uwe Hermann [Thu, 5 Jan 2012 19:56:59 +0000 (20:56 +0100)]
srd: Update nunchuk decoder to new API.

12 years agosrd: Update transitioncounter to the new API.
Uwe Hermann [Thu, 5 Jan 2012 19:50:37 +0000 (20:50 +0100)]
srd: Update transitioncounter to the new API.

12 years agosrd: Update USB decoder to the new API.
Uwe Hermann [Thu, 5 Jan 2012 19:26:54 +0000 (20:26 +0100)]
srd: Update USB decoder to the new API.

12 years agosrd: Update the SPI decoder to the new API.
Uwe Hermann [Thu, 5 Jan 2012 18:00:27 +0000 (19:00 +0100)]
srd: Update the SPI decoder to the new API.

12 years agosrd: Convert UART decoder to new API.
Uwe Hermann [Thu, 5 Jan 2012 15:27:15 +0000 (16:27 +0100)]
srd: Convert UART decoder to new API.

12 years agosrd: Small Python detection fixes.
Uwe Hermann [Thu, 5 Jan 2012 15:01:25 +0000 (16:01 +0100)]
srd: Small Python detection fixes.

12 years agoconfigure.ac: fixed python3-config detection.
Renato Caldas [Thu, 5 Jan 2012 14:27:13 +0000 (14:27 +0000)]
configure.ac: fixed python3-config detection.

12 years agonew srd_logic type implementation for PDs to iterate over.
Bert Vermeulen [Thu, 5 Jan 2012 02:31:36 +0000 (03:31 +0100)]
new srd_logic type implementation for PDs to iterate over.

12 years agoA few more fixes for configure.ac files.
Uwe Hermann [Wed, 4 Jan 2012 14:26:41 +0000 (15:26 +0100)]
A few more fixes for configure.ac files.

Add missing checks and quotes, remove superfluous checks, etc.

12 years agosr/srd: Add Doxyfile to the tarball.
Uwe Hermann [Wed, 4 Jan 2012 01:50:26 +0000 (02:50 +0100)]
sr/srd: Add Doxyfile to the tarball.

12 years agosrd: Show config summary, libs, and Python info.
Uwe Hermann [Wed, 4 Jan 2012 01:41:33 +0000 (02:41 +0100)]
srd: Show config summary, libs, and Python info.

12 years agosrd: configure.ac: Fix version number magic.
Uwe Hermann [Tue, 3 Jan 2012 23:44:02 +0000 (00:44 +0100)]
srd: configure.ac: Fix version number magic.

12 years agoPut most autotools files into autostuff/.
Uwe Hermann [Tue, 3 Jan 2012 20:55:48 +0000 (21:55 +0100)]
Put most autotools files into autostuff/.

This yields a slightly more "tidy" top-level directory.

12 years agosrd: Remove decode() docstrings.
Uwe Hermann [Tue, 3 Jan 2012 19:26:29 +0000 (20:26 +0100)]
srd: Remove decode() docstrings.

This info is in the decoder's metadata, where the frontends can get it
from programmatically anyway.

12 years agosrd: Put files into .../share/libsigrokdecode.
Uwe Hermann [Tue, 3 Jan 2012 19:08:18 +0000 (20:08 +0100)]
srd: Put files into .../share/libsigrokdecode.

12 years agosr/srd: Fix left-over #includes.
Uwe Hermann [Tue, 3 Jan 2012 18:56:01 +0000 (19:56 +0100)]
sr/srd: Fix left-over #includes.

The libs themselves should use #include "sigrok.h" etc., while the
frontends must use #include <sigrok.h> and so on.

12 years agosrd: *.py: Remove one incorrect ord() call.
Uwe Hermann [Tue, 3 Jan 2012 18:36:30 +0000 (19:36 +0100)]
srd: *.py: Remove one incorrect ord() call.

While 'data' is of type 'bytes', 'data[0]' for example is of type 'int',
thus the ord() there is neither needed nor correct anymore (yields an error).

12 years agosrd: Quick hack to make nunchuk.py work again.
Uwe Hermann [Tue, 3 Jan 2012 18:30:17 +0000 (19:30 +0100)]
srd: Quick hack to make nunchuk.py work again.

12 years agosrd: Quick hack to make mx25lxx05d.py work again.
Uwe Hermann [Tue, 3 Jan 2012 18:17:01 +0000 (19:17 +0100)]
srd: Quick hack to make mx25lxx05d.py work again.

In Python 3 there's no xrange() anymore, only range().

12 years agosrd: Quick hack to make transitioncounter.py work again.
Uwe Hermann [Tue, 3 Jan 2012 18:13:48 +0000 (19:13 +0100)]
srd: Quick hack to make transitioncounter.py work again.

12 years agosrd: Quick hack to make the USB decoder work again.
Uwe Hermann [Tue, 3 Jan 2012 17:33:43 +0000 (18:33 +0100)]
srd: Quick hack to make the USB decoder work again.

12 years agosrd: Quick hack to make the SPI decoder work again.
Uwe Hermann [Tue, 3 Jan 2012 17:32:08 +0000 (18:32 +0100)]
srd: Quick hack to make the SPI decoder work again.

Since Python 3 there are some explicit int() casts needed.

12 years agosrd: Quick hack to make the UART decoder work again.
Uwe Hermann [Tue, 3 Jan 2012 16:47:55 +0000 (17:47 +0100)]
srd: Quick hack to make the UART decoder work again.

12 years agosrd: configure.ac: Add comment.
Uwe Hermann [Mon, 2 Jan 2012 13:23:15 +0000 (14:23 +0100)]
srd: configure.ac: Add comment.

12 years agoSplit README, add appropriate ones per-project.
Uwe Hermann [Fri, 30 Dec 2011 21:38:25 +0000 (22:38 +0100)]
Split README, add appropriate ones per-project.

12 years agosr/srd: Remove/fix non-applicable autotools stuff.
Uwe Hermann [Fri, 30 Dec 2011 09:50:00 +0000 (10:50 +0100)]
sr/srd: Remove/fix non-applicable autotools stuff.

12 years agosr/srd: Move some files to their resp. dirs.
Uwe Hermann [Fri, 30 Dec 2011 09:42:39 +0000 (10:42 +0100)]
sr/srd: Move some files to their resp. dirs.

12 years agoFix utf8 encoding error by changing the Python parameter to a bytes() object (python3...
Kristoffer Sjöberg [Wed, 28 Dec 2011 14:14:31 +0000 (15:14 +0100)]
Fix utf8 encoding error by changing the Python parameter to a bytes() object (python3 regression).

12 years agobetter python memory management
Bert Vermeulen [Wed, 28 Dec 2011 12:40:23 +0000 (13:40 +0100)]
better python memory management

12 years agopython 3 port
Bert Vermeulen [Tue, 27 Dec 2011 21:15:53 +0000 (22:15 +0100)]
python 3 port

12 years agomake time/duration work, at least when loading from a session file
Bert Vermeulen [Thu, 15 Dec 2011 02:31:31 +0000 (03:31 +0100)]
make time/duration work, at least when loading from a session file

PD decode() call now takes 3 arguments: timeoffset, duration, data
as per the current API specification.

12 years agonew dynamic output stream registration code, not finished.
Bert Vermeulen [Wed, 7 Dec 2011 08:56:49 +0000 (09:56 +0100)]
new dynamic output stream registration code, not finished.

12 years agosrd: SRD_ERR_ARGS -> SRD_ERR_ARG.
Uwe Hermann [Wed, 21 Dec 2011 18:09:46 +0000 (19:09 +0100)]
srd: SRD_ERR_ARGS -> SRD_ERR_ARG.

This is done to be consistent with libsigrok's SR_ERR_ARG (nicer that way).

12 years agosrd: Add logging framework.
Uwe Hermann [Wed, 21 Dec 2011 17:57:04 +0000 (18:57 +0100)]
srd: Add logging framework.

This includes the (private) functions srd_err() and friends, the
(public) SRD_LOG_ERR macros and friends, and the (public) API functions
srd_set_loglevel() and srd_get_loglevel().

12 years agosrd: Add MX25Lxx05D SPI chip decoder.
Uwe Hermann [Sat, 17 Dec 2011 16:29:10 +0000 (17:29 +0100)]
srd: Add MX25Lxx05D SPI chip decoder.

Work in progress, not yet fully functional.

12 years agosrd: nunchuk: Make states global.
Uwe Hermann [Sat, 10 Dec 2011 15:57:16 +0000 (16:57 +0100)]
srd: nunchuk: Make states global.

12 years agosrd: decoders: Don't use problematic and/or construct.
Uwe Hermann [Sat, 10 Dec 2011 15:54:47 +0000 (16:54 +0100)]
srd: decoders: Don't use problematic and/or construct.

12 years agosrd: UART: Simplify a code snippet.
Uwe Hermann [Wed, 7 Dec 2011 18:45:40 +0000 (19:45 +0100)]
srd: UART: Simplify a code snippet.

12 years agosrd: UART: Add some protocol documentation.
Uwe Hermann [Wed, 7 Dec 2011 18:43:24 +0000 (19:43 +0100)]
srd: UART: Add some protocol documentation.

12 years agosrd: Add initial UART decoder.
Uwe Hermann [Wed, 7 Dec 2011 01:03:25 +0000 (02:03 +0100)]
srd: Add initial UART decoder.

Works with any baudrate, number of bits, parity types, number of stop
bits and so on, in theory. Not all options are fully implemented or
tested though. Various TODOs remain.

12 years agosrd: Initialise struct members by name. Minor other fixes.
Gareth McMullin [Mon, 5 Dec 2011 07:31:32 +0000 (20:31 +1300)]
srd: Initialise struct members by name. Minor other fixes.

Restored some prototypes in sigrokdecode.h.
Abort sigrok-cli on error while decoding (includes KeyboardInterrupt).
Fixed passing metadata to Decoder.start() method.

12 years agosrd: Bring back the 'id' field and use it.
Uwe Hermann [Sun, 4 Dec 2011 22:36:52 +0000 (23:36 +0100)]
srd: Bring back the 'id' field and use it.

12 years agosrd: Update decoders to changed API.
Uwe Hermann [Sun, 4 Dec 2011 19:59:56 +0000 (20:59 +0100)]
srd: Update decoders to changed API.

12 years agorefactored PD framework, now using new sigrok.Decoder object
Bert Vermeulen [Sun, 4 Dec 2011 09:33:02 +0000 (10:33 +0100)]
refactored PD framework, now using new sigrok.Decoder object

This uses the new python unified type/class object API to construct
an object for PDs to subclass. The sigrok.Decoder class has a method
put() which is implemented as a C function, and receives the PD's
object instance as its first parameter.

12 years agosrd: Changed nunchuk and transitioncounter to new registraion api.
Gareth McMullin [Thu, 1 Dec 2011 17:44:42 +0000 (06:44 +1300)]
srd: Changed nunchuk and transitioncounter to new registraion api.

12 years agosrd: PDs now explicitly register with sigrok module.
Gareth McMullin [Thu, 1 Dec 2011 10:09:40 +0000 (23:09 +1300)]
srd: PDs now explicitly register with sigrok module.

12 years agosrd: i2c.py: States are global, not per-instance.
Uwe Hermann [Thu, 1 Dec 2011 10:04:35 +0000 (11:04 +0100)]
srd: i2c.py: States are global, not per-instance.

12 years agosrd: srd_usb.py: Cosmetics, white-space fixes.
Uwe Hermann [Wed, 30 Nov 2011 22:14:19 +0000 (23:14 +0100)]
srd: srd_usb.py: Cosmetics, white-space fixes.

12 years agosrd: nunchuk.py: Add some more URLs.
Uwe Hermann [Tue, 29 Nov 2011 23:19:16 +0000 (00:19 +0100)]
srd: nunchuk.py: Add some more URLs.

12 years agosrd: Added USB full-speed decoder.
Gareth McMullin [Tue, 29 Nov 2011 10:50:32 +0000 (23:50 +1300)]
srd: Added USB full-speed decoder.

12 years agosrd: nunchuk.py: Convert to new decoder API.
Uwe Hermann [Mon, 28 Nov 2011 20:46:55 +0000 (21:46 +0100)]
srd: nunchuk.py: Convert to new decoder API.

This is not really finished, or tested, or working. It's also a decoder
which stacks on top of the I2C decoder, and the infrastructure for
stacking decoders is not yet usable.

12 years agosrd: Moved instance list to libsigrokdecode.
Gareth McMullin [Mon, 28 Nov 2011 09:54:18 +0000 (22:54 +1300)]
srd: Moved instance list to libsigrokdecode.

Functions changed to srd_session_start() to initialise the session,
and srd_session_feed() to feed sample data to the decoders.

12 years agosrd: Pass samplerate to decoder in metadata.
Gareth McMullin [Mon, 28 Nov 2011 08:52:35 +0000 (21:52 +1300)]
srd: Pass samplerate to decoder in metadata.

12 years agodecoders: Drop psyco stuff, seems obsolete.
Uwe Hermann [Sun, 27 Nov 2011 21:27:36 +0000 (22:27 +0100)]
decoders: Drop psyco stuff, seems obsolete.

The psyco module seems to be mostly unmaintained at this point, it does
not support Python 2.7 or higher at all, it only supports x86, it doesn't
support 64 bit systems at all, etc. etc.

We should try to find other ways to optimize our decoders for speed.

12 years agosrd: Python: Consistently use single quotes for strings.
Uwe Hermann [Sun, 27 Nov 2011 21:17:54 +0000 (22:17 +0100)]
srd: Python: Consistently use single quotes for strings.

12 years agosrd: i2c.py: Docstrings should use """.
Uwe Hermann [Sun, 27 Nov 2011 21:12:37 +0000 (22:12 +0100)]
srd: i2c.py: Docstrings should use """.

This is the most commonly used and recommended method for docstrings.

12 years agosrd: i2c.py: Mark Repeated Start condition as 'Sr'.
Uwe Hermann [Sun, 27 Nov 2011 20:51:39 +0000 (21:51 +0100)]
srd: i2c.py: Mark Repeated Start condition as 'Sr'.

12 years agosrd: i2c.py: Rework I2C decoder.
Uwe Hermann [Sun, 27 Nov 2011 19:17:49 +0000 (20:17 +0100)]
srd: i2c.py: Rework I2C decoder.

This should be working OK for most use-cases now, though there certainly
are a few TODOs left. The output format is just a quick hack and will
change.

12 years agosrd: Pass metadata to decoders only on SR_DF_HEADER.
Gareth McMullin [Sun, 27 Nov 2011 06:17:13 +0000 (19:17 +1300)]
srd: Pass metadata to decoders only on SR_DF_HEADER.

Before this was passed to the decoder's constuctor, but the parameters
may not all be known at construction.  Decoders now have a method start()
which is called at the start of the capture, and metadata is passed as
an arg to this function.

12 years agosrd: i2c.py: Convert to new API (unfinished).
Uwe Hermann [Thu, 24 Nov 2011 08:35:26 +0000 (09:35 +0100)]
srd: i2c.py: Convert to new API (unfinished).

This decoder is probably not fully converted yet, and doesn't really
successfully decode I2C, yet. It's work in progress.

12 years agosrd: Comment out debug line for now.
Uwe Hermann [Thu, 24 Nov 2011 00:24:46 +0000 (01:24 +0100)]
srd: Comment out debug line for now.

12 years agotransitioncounter.py: Convert to new API.
Uwe Hermann [Wed, 23 Nov 2011 22:08:39 +0000 (23:08 +0100)]
transitioncounter.py: Convert to new API.

This is still work-in-progress, but at least it runs and outputs stuff now.

12 years agonunchuk.py: Fix indentation (syntax error).
Uwe Hermann [Wed, 23 Nov 2011 22:05:01 +0000 (23:05 +0100)]
nunchuk.py: Fix indentation (syntax error).

12 years agoDecoders: Use 4 spaces for indentation as per PEP-8.
Uwe Hermann [Wed, 23 Nov 2011 15:15:55 +0000 (16:15 +0100)]
Decoders: Use 4 spaces for indentation as per PEP-8.

12 years agosrd: decode.c: Improve error handling a bit.
Uwe Hermann [Wed, 23 Nov 2011 08:17:48 +0000 (09:17 +0100)]
srd: decode.c: Improve error handling a bit.

12 years agosrd: decode.c: Add/fix comments and coding-style.
Uwe Hermann [Wed, 23 Nov 2011 08:09:30 +0000 (09:09 +0100)]
srd: decode.c: Add/fix comments and coding-style.

12 years agosrd: Doxygen comments for srd_init() and srd_exit().
Uwe Hermann [Wed, 23 Nov 2011 07:56:44 +0000 (08:56 +0100)]
srd: Doxygen comments for srd_init() and srd_exit().

12 years agolibsigrokdecode: Allow frontend to configure decoder probes.
Gareth McMullin [Sun, 20 Nov 2011 05:39:50 +0000 (18:39 +1300)]
libsigrokdecode: Allow frontend to configure decoder probes.

12 years agolibsigrokdecode: Allow multiple PD instances.
Gareth McMullin [Sun, 20 Nov 2011 03:30:38 +0000 (16:30 +1300)]
libsigrokdecode: Allow multiple PD instances.

There is currently no way to configure options or probes, so they'll
always be the same, but it's a start.

12 years agolibsigrokdecode: Move decoder metadata into Decoder object.
Gareth McMullin [Sun, 20 Nov 2011 00:07:44 +0000 (13:07 +1300)]
libsigrokdecode: Move decoder metadata into Decoder object.

12 years agoSimplified code for calling Python decode method.
Gareth McMullin [Tue, 15 Nov 2011 05:47:15 +0000 (18:47 +1300)]
Simplified code for calling Python decode method.

12 years agoAdd support for OO based PDs.
Kristoffer Sjöberg [Mon, 14 Nov 2011 09:07:29 +0000 (10:07 +0100)]
Add support for OO based PDs.

12 years agoPass multiple samples to the protocol decoder and adapt transitioncounter.py to work...
Kristoffer Sjöberg [Sun, 13 Nov 2011 02:11:40 +0000 (03:11 +0100)]
Pass multiple samples to the protocol decoder and adapt transitioncounter.py to work with this.

12 years agoUpdate transitioncounter.py to the streaming PD API.
Kristoffer Sjöberg [Sat, 12 Nov 2011 23:27:58 +0000 (00:27 +0100)]
Update transitioncounter.py to the streaming PD API.

12 years agoPartial implementation of the streaming PD API.
Kristoffer Sjöberg [Sat, 12 Nov 2011 22:42:52 +0000 (23:42 +0100)]
Partial implementation of the streaming PD API.

12 years agolibsigrokdecode.pc.in: Add missing @CPPFLAGS_PYTHON@.
Uwe Hermann [Sat, 19 Nov 2011 17:10:32 +0000 (18:10 +0100)]
libsigrokdecode.pc.in: Add missing @CPPFLAGS_PYTHON@.

12 years agolibsigrokdecode.pc: Add glib + Python.
Uwe Hermann [Thu, 17 Nov 2011 21:42:30 +0000 (22:42 +0100)]
libsigrokdecode.pc: Add glib + Python.

13 years agoRevert temporary changes for 0.2 release.
Uwe Hermann [Sun, 3 Apr 2011 21:18:46 +0000 (23:18 +0200)]
Revert temporary changes for 0.2 release.

13 years agoDisable some stuff which should not be in 0.2.
Uwe Hermann [Sun, 3 Apr 2011 20:38:35 +0000 (22:38 +0200)]
Disable some stuff which should not be in 0.2.

Disable decoders, disable lib building.

13 years agoDecoders: s/dist_pkgdata_SCRIPTS/dist_pkgdata_DATA/.
Uwe Hermann [Sun, 3 Apr 2011 17:48:09 +0000 (19:48 +0200)]
Decoders: s/dist_pkgdata_SCRIPTS/dist_pkgdata_DATA/.

The .py decoder files are not technically scripts and should not be
executable and can not be invoked on the command line
(via ./foo.py --help or similar).

13 years agoMake some more items 'static'.
Uwe Hermann [Tue, 22 Feb 2011 22:12:41 +0000 (23:12 +0100)]
Make some more items 'static'.

13 years agosigrokdecode.h: More doxygen-friendly comments.
Uwe Hermann [Tue, 8 Feb 2011 23:01:02 +0000 (00:01 +0100)]
sigrokdecode.h: More doxygen-friendly comments.

13 years agoDoxygen config files: Initial configuration.
Uwe Hermann [Tue, 8 Feb 2011 22:46:29 +0000 (23:46 +0100)]
Doxygen config files: Initial configuration.

13 years agoAdd doxygen config files for both libs.
Uwe Hermann [Tue, 8 Feb 2011 22:00:49 +0000 (23:00 +0100)]
Add doxygen config files for both libs.

13 years agostruct srd_decoder: Add more string fields.
Uwe Hermann [Sun, 6 Feb 2011 16:36:32 +0000 (17:36 +0100)]
struct srd_decoder: Add more string fields.

Get the following string fields from the .py decoders' register()
function and store them in the respective 'struct srd_decoder':

 - longname
 - longdesc
 - author
 - email
 - license

13 years agoPython decoders: Add more metadata.
Uwe Hermann [Sun, 6 Feb 2011 16:29:44 +0000 (17:29 +0100)]
Python decoders: Add more metadata.

Make the list of metadata info match the spec in the wiki more closely.

13 years agoRevert FIRMWARE_DIR / DECODERS_DIR method for now.
Uwe Hermann [Fri, 4 Feb 2011 19:11:17 +0000 (20:11 +0100)]
Revert FIRMWARE_DIR / DECODERS_DIR method for now.

There were several issues with the other method, revert for now.

13 years agoFix build when no libusb-LA is compiled.
Uwe Hermann [Wed, 2 Feb 2011 09:25:52 +0000 (10:25 +0100)]
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.

13 years agoConsistently use _exit prefix for functions.
Uwe Hermann [Sun, 30 Jan 2011 18:22:13 +0000 (19:22 +0100)]
Consistently use _exit prefix for functions.

13 years agoChange SIGROKDECODE_ prefix to SRD_.
Uwe Hermann [Sat, 29 Jan 2011 14:41:39 +0000 (15:41 +0100)]
Change SIGROKDECODE_ prefix to SRD_.

Do the same for sigrokdecode_ -> srd_ in struct names and function names.

13 years agoProperly free all memory upon sigrokdecode_shutdown().
Uwe Hermann [Thu, 27 Jan 2011 23:56:46 +0000 (00:56 +0100)]
Properly free all memory upon sigrokdecode_shutdown().

13 years agolibsigrokdecode: Always load all decoders upon init.
Uwe Hermann [Thu, 27 Jan 2011 23:11:00 +0000 (00:11 +0100)]
libsigrokdecode: Always load all decoders upon init.

Let sigrokdecode_init() always load all decoders it can find in the
decoders directory, i.e., the user doesn't need to manually load decoders.
Instead he can just look up the list via sigrokdecode_list_decoders()
after sigrokdecode_init() has run.

This is not a problem, as sigrokdecode_init() is only run once per
sigrok-cli or sigrok-gui invocation, and even with many decoders this
should not take too long.

The list of decoders within libsigrokdecode is no longer a string, but
rather a list of 'struct sigrokdecode_decoder *' pointers.

Add sigrokdecode_get_decoder_by_id() API function which returns the
decoder with the specified ID (file name without ".py" suffix, for now),
or NULL if it cannot be found.

sigrokdecode_load_decoder() is now a private function and not exported
via the lib, i.e. not available to users of libsigrokdecode.

13 years agoFix some compiler warnings.
Uwe Hermann [Thu, 27 Jan 2011 22:17:47 +0000 (23:17 +0100)]
Fix some compiler warnings.

13 years agodecode.c: Simplify the import code.
Uwe Hermann [Thu, 27 Jan 2011 22:12:34 +0000 (23:12 +0100)]
decode.c: Simplify the import code.

Use PyImport_ImportModule() instead of PyImport_Import(), so we don't
have to temporarily create a py_name object.

13 years agoSome more simplifications in decode.c.
Uwe Hermann [Thu, 27 Jan 2011 22:02:39 +0000 (23:02 +0100)]
Some more simplifications in decode.c.

13 years agoUse Py_XINCREF/Py_XDECREF, not Py_INCREF/Py_DECREF.
Uwe Hermann [Thu, 27 Jan 2011 21:53:29 +0000 (22:53 +0100)]
Use Py_XINCREF/Py_XDECREF, not Py_INCREF/Py_DECREF.

They're defined like this in Python.h:

  /* Macros to use in case the object pointer may be NULL: */
  #define Py_XINCREF(op) if ((op) == NULL) ; else Py_INCREF(op)
  #define Py_XDECREF(op) if ((op) == NULL) ; else Py_DECREF(op)

I.e., the performance penalty we take by using Py_XINCREF/Py_XDECREF is
pretty much non-existant.

13 years agodecode.c: Simplify sigrokdecode_run_decoder().
Uwe Hermann [Thu, 27 Jan 2011 21:50:57 +0000 (22:50 +0100)]
decode.c: Simplify sigrokdecode_run_decoder().

13 years agoBugfix: Add missing Py_INCREF()s.
Uwe Hermann [Thu, 27 Jan 2011 21:13:08 +0000 (22:13 +0100)]
Bugfix: Add missing Py_INCREF()s.

This should fix an error/segfault when running a decoder on bigger
datasets.

13 years agodecode.c: Better documentation.
Uwe Hermann [Thu, 27 Jan 2011 20:07:40 +0000 (21:07 +0100)]
decode.c: Better documentation.

Mark all Python/C API functions returning a new reference with "NEWREF",
and those that steal references with "STEAL".