Handel¶
A python binding for the handel library.
System requirements¶
The handel DLL files need to be available in PATH
(/usr/local/bin
in Cygwin for instance).
Python compatibility:
- python 3.7
Usage¶
Example usage:
>>> from bliss.controllers.mca.handel.interface import *
>>> init('xmap.ini')
>>> start_system()
>>> get_detectors()
['detector1']
>>> get_modules()
['module1']
>>> get_module_type('module1')
'mercury'
>>> get_channels()
(0,)
>>> start_run(0)
>>> stop_run(0)
>>> get_run_data(0)
array([13260, 52275, 256, ..., 0, 0, 0], dtype=uint32)
Gevent mode¶
Make the interface gevent-compatible using:
from handel.gevent import patch
patch()
Scripts¶
A few scripts are provided:
parse_error_header.py
which parseshandel_errors.h
and output a python dictionary of handel errors
Entry points¶
bliss-handel-server
which serves the handel interface over the network using bliss rpc.