channel: add AnalogChannel.apply_calibration.
[pycomedi.git] / README
1 This package provides an object-oriented interface to the Comedi_
2 drivers.  The standard Python interface bundled with Comedilib is a
3 simple SWIG clone of the C interface.  In pycomedi, we convert the
4 functions into class methods (see `pycomedi.classes`), so you don't
5 have to worry about dragging around opaque types like `comedi_t *`
6 device pointers.  We also bundle related constants together in
7 `_Enums` and `_Flags` (see `pycomedi.constants`), to make handling
8 common operations like flag manipulations simpler.  Finally, there are
9 a number of utility classes (see `pycomedi.utility`) to make common
10 tasks like creating instructions or reading hardware-timed analog
11 input easier.
12
13
14 Installation
15 ============
16
17 Packages
18 --------
19
20 Gentoo
21 ~~~~~~
22
23 I've packaged pycomedi for Gentoo.  You need layman_ and my `wtk
24 overlay`_.  Install with::
25
26     # emerge -av app-portage/layman
27     # layman --add wtk
28     # emerge -av dev-python/pycomedi
29
30
31 Dependencies
32 ------------
33
34 If you're installing by hand or packaging pycomedi for another
35 distribution, you'll need the following dependencies:
36
37 =======  ===================  ================  ==========================
38 Package  Purpose              Debian_           Gentoo_
39 =======  ===================  ================  ==========================
40 NumPy_   ?                    python-numpy      dev-python/numpy
41 SciPy_   testing              python-scipy      sci-libs/scipy
42 Comedi_  Comedilib interface  python-comedilib  sci-libs/comedilib [#clb]_
43 nose_    testing              python-nose       dev-python/nose
44 Cython_  Comedilib interface  cython            dev-python/cython
45 =======  ===================  ================  ==========================
46
47 .. [#clb] In the `wtk overlay`_.
48
49
50 Installing by hand
51 ------------------
52
53 Pycomedi is available as a Git_ repository::
54
55     $ git clone git://tremily.us/pycomedi.git
56
57
58 See the homepage_ for details.  To install the checkout, run the
59 standard::
60
61     $ python setup.py install
62
63
64 Usage
65 =====
66
67 See the examples in the `doc` directory.
68
69
70 Testing
71 =======
72
73 Integration tests with::
74
75     $ nosetests --with-doctest --doctest-extension=txt doc
76
77 Run both integration tests and internal unit tests with::
78
79     $ ./test.sh
80
81
82 Licence
83 =======
84
85 This project is distributed under the `GNU General Public License
86 Version 2`_ or greater.
87
88
89 Author
90 ======
91
92 W. Trevor King
93 wking@tremily.us
94
95
96 .. _Comedi: http://www.comedi.org/
97 .. _layman: http://layman.sourceforge.net/
98 .. _wtk overlay: http://blog.tremily.us/posts/Gentoo_overlay/
99 .. _science overlay: http://overlays.gentoo.org/proj/science/wiki/en
100 .. _Debian: http://www.debian.org/
101 .. _Gentoo: http://www.gentoo.org/
102 .. _NumPy: http://numpy.scipy.org/
103 .. _SciPy: http://www.scipy.org/
104 .. _nose: http://somethingaboutorange.com/mrl/projects/nose/
105 .. _Cython: http://www.cython.org/
106 .. _Git: http://git-scm.com/
107 .. _homepage: http://blog.tremily.us/posts/pycomedi/
108 .. _GNU General Public License Version 2:
109      http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt