Fandango (Fun for Tango)
Functional tools for PyTango
NOTE: Fandango package is a refactored version of the old PyTango_utils package, which is now deprecated
Downloading
Fandango can be downloaded from sourceforge:
svn co https://tango-cs.svn.sourceforge.net/svnroot/tango-cs/share/fandango/trunk/fandango fandango
Requirements
It requires PyTango
Features
This library provides many utilities for PyTango device servers and applications written in python:
- dynamic attributes
- online python code evaluation
- device server inheritance
- .csv parsing
- advanced containers
- functional programming
- logging
- MySQL access
- Astor-like actions
- serialized hardware access
- ...
-
What it is used for?
Several PyTango APIs and device servers use Fandango modules:
- PyTangoArchiving
- PyPLC
- SplitterBoxDS
- PyStateComposer
- PySignalSimulator
- PyAlarm
- CSVReader
- ...
Recipes for fandango modules usage
dynamic.DynamicDS: template for Dynamic Attributes
see [ http://www.tango-controls.org/howtos/dynamicattributes ]
servers.ServersDict: the Astor-like python API
start/stop all device servers in a machine (like Astor -> Stop All)
Stopping
import fandango fandango.Astor(hosts=['my.host']).stop_all_servers()
and the other way round ...
astor = fandango.Astor(hosts=['my.host']) astor.start_all_servers()
if you just want to see if things are effectively running or not:
astor.states()

