I also added 2010 for:
commit 3fe8e6baac
Author: Ian Abbott <abbotti@mev.co.uk>
Date: Mon Dec 20 14:50:21 2010 +0000
Add sampl_t and lsampl_t array_class()es to comedi.i.
...
Patch from W. Trevor King.
The old method only worked out of the box if you were running Python
2.1 on a 586. I imagine that is too small a slice of current users to
be worth hard coding ;).
This avoids:
Traceback (most recent call last):
...
File ".../mmap.py", line 96, in prepare_cmd
C.scan_begin_arg = 1e9/freq
...
TypeError: in method 'comedi_cmd_struct_scan_begin_arg_set',
argument 2 of type 'unsigned int'
With the previous implementation, `mmap` was importing the demo
script, not the standard `mmap` library module. From the docs [1]:
The directory containing the script being run is placed at the
beginning of the search path, ahead of the standard library
path. This means that scripts in that directory will be loaded
instead of modules of the same name in the library directory.
I'm not sure when this changed in Python, since the demo script
presumably worked with an earlier version.
[1]: http://docs.python.org/tutorial/modules.html#the-module-search-path
This catches it up for the folowing commits to the comedi repository:
commit 311e9c540217d60bdf56a1dba9eafe474fd3b218
Author: Bernd Porr <Bernd.Porr@f2s.com>
Date: Sun Jan 13 23:07:02 2008 +0000
Added a proper PWM subdevice for comedi.
commit 8092ed57ff38e1fcaf75a7e0bf3b8c4f5372f3d7
Author: Frank Mori Hess <fmhess@speakeasy.net>
Date: Sat Jan 31 22:13:09 2004 +0000
serial dio (SCXI) support from Caleb Tennis
This catches the Python demos up to:
commit 003b9ec501
Author: Ian Abbott <abbotti@mev.co.uk>
Date: Mon Nov 8 11:01:42 2010 +0000
Add chanlist_len parameter to comedi_get_cmd_generic_timed.
This makes it possible to populate `comedi_insnslist_struct` for use
with `comedi_do_insnlist`.
I also removed my earlier re-typedefs of `sampl_array` and
`lsampl_array`. I didn't understand the reason for the underlying
`TypeError` when I added them. The proper way to avoid that error is
to use the `.cast()` and `.frompointer()` methods. See
`demo/python/insn.py` (coming soon) for details.
The comedi_calibrate.8 man page has been moved to the comedi_calibrate
package where it belongs. Thanks to W. Trevor King for pointing it out.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Here's a small patch to make the configure script compatible with Python
3. The wrapper itself (swig/python/comedi_python_wrap.c) will have to be
generated with SWIG >= 2.0.0 for Python 3 compatibility.
The 'go' variable is only used by the 'while' loop that reads the data.
We don't need to set it in the 'for' loop that checks the data
afterwards.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
If the command does not stop immediately after the last sample, there
can be more data to read than we have room for. Make sure the 'while'
loop 'read()' does not overrun the end of the malloc'ed 'buf'.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
When doing an out-of-tree build, the comedi_version.h file is in
the build tree, not in the source tree. The CFLAGS needs an additional
-I option so the compiler can find it.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
included by comedilib.h, containing COMEDILIB_VERSION_MAJOR,
COMEDILIB_VERSION_MINOR, COMEDILIB_VERSION_MICRO, and
COMEDILIB_CHECK_VERSION(major,minor,micro). This can be used to perform
C pre-processor checks for API changes in comedilib.
line-lengths for 80-character wide terminals. Most of the updated text
supplied by W. Trevor King. Ian Abbott added a note that it only applies
when building the wrappers separately from Comedilib without 'make'.
Add "comedi_python.i" swig interface file which merely %includes the
"comedi.i" in the parent directory. Fix paths in "setup.py" and set it up
to run swig directly (using "comedi_python.i" as the source). Change
"_comedi.py" to "comedi.py" (but keep the underscore prefix on the .so
and .la files).
Based on a patch by W. Trevor King.
to Debian woody packages. I had recently quite a lot of e-mails
asking about the permissions of the comedi files and every time the
the problem was that the udev rules were installed in /usr/local/etc.