Skip to content

wkitka/pytango

 
 

Repository files navigation

PyTango

Codacy Badge

Main website: http://pytango.readthedocs.io

Python binding for Tango, a library dedicated to distributed control systems.

Description

PyTango exposes the complete Tango C++ API through the tango python module. It also adds a bit of abstraction by taking advantage of the Python capabilites:

  • tango.client provides a client access to device servers and databases.
  • tango.server provides base classes to declare and run device servers.

Requirements

PyTango is compatible with python 2 and python 3.

General dependencies:

Python dependencies:

Build dependencies:

Optional dependencies:

Note

As a general rule, libtango and pytango should share the same major and minor version (for a version X.Y.Z, X and Y should match). On some systems you may need to install libtango, omniORB4 and libzmq related development packages.

Install

PyTango is available on PyPI as pytango:

$ pip install pytango

Alternatively, PyTango can be built and installed from the sources:

$ python setup.py install

In both cases, the installation takes a few minutes since the _tango boost extension has to compile.

Note

For custom Boost.Python installation locations, environment variables can be used to modify the default paths. See the description of the BOOST_ROOT and related variables in the setup.py file.

Usage

To test the installation, import tango and check tango.utils.info():

>>> import tango
>>> print(tango.utils.info())
PyTango 9.3.3 (9, 3, 3)
PyTango compiled with:
    Python : 2.7.15
    Numpy  : 1.16.2
    Tango  : 9.3.3
    Boost  : 1.67.0

PyTango runtime is:
    Python : 2.7.15
    Numpy  : 1.16.2
    Tango  : 9.3.3

PyTango running on:
('Linux', 'hostname', '4.4.0-131-generic', '#157-Ubuntu SMP Sat Jul 27 06:00:36 UTC 2019', 'x86_64', 'x86_64')

For an interactive use, consider using ITango, a tango IPython profile.

Documentation

Check out the documentation for more informations.

Support and contribution

You can get support from the Tango forums, for both Tango and PyTango questions.

All contributions, PR and bug reports are welcome, please see: How to Contribute !

About

Python binding to Tango C++

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 55.1%
  • C++ 42.4%
  • TSQL 0.8%
  • CMake 0.8%
  • Makefile 0.5%
  • Shell 0.3%
  • Dockerfile 0.1%