Channel Access server library
Project description
This library contains a low-level binding to the cas library in EPICS base and a thread-safe high level interface to create channel access servers.
For the client implementation see channel_access.client.
Installation
Before installing the library, the environment variables EPICS_BASE and EPICS_HOST_ARCH must be set.
Then the library can be installed with pip:
pip install channel_access.server
If numpy can be imported at install time, numpy support is automatically activated. This can be explicitly controlled with the environment variable CA_WITH_NUMPY:
CA_WITH_NUMPY=0 pip install channel_access.server CA_WITH_NUMPY=1 pip install channel_access.server
If the package is compiled with numpy support, numpy arrays are used by default. If numpy arrays should not be used, the parameter use_numpy can be set to False.
Example
This example shows a simple server with a PV counting up:
import time
import channel_access.common as ca
import channel_access.server as cas
with cas.Server() as server:
pv = server.createPV('CAS:Test', ca.Type.LONG)
while True:
pv.value += 1
time.sleep(1.0)
Documentation
The documentation is available online or it can be generated from the source code with sphinx:
cd /path/to/repository pip install -e .[doc] python setup.py build_sphinx
Then open build/sphinx/html/index.html.
Get the source
The source code is available in a Github repository:
git clone https://github.com/delta-accelerator/channel_access.server
Tests
Tests are run with pytest:
cd /path/to/repository pip install -e .[dev] pytest -v
To run the tests for all supported version use tox:
cd /path/to/repository tox
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for channel_access.server-0.2.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1958670d0cd9bf1ea24dbd32a2d457c5ff1b16bdbf0c2e5c87a566ba0367118d |
|
MD5 | 73857a4e81024302a594ff307258cec3 |
|
BLAKE2b-256 | 695d6b737c0768cde092b3ae021a439dd97e45529a7ba18b2fa4d4bafe522513 |