Skip to main content

Channel Access Foreign Function Interface

Project description

caffi is the Channel Access Foreign Function Interface. It uses CFFI to call EPICS channel access library.

This package provides direct low level interface to channel access, alike the C API.

Install

EPICS dynamic libraries have been shipped with the package for Windows, Linux and macOS. But if the environment variables EPICS_BASE and EPICS_HOST_ARCH are set on macOS and Linux, those libraries under path ${EPICS_BASE}/lib/${EPICS_HOST_ARCH} will be used.

Either use pip,

$ pip install caffi

or checkout source code from the git repository,

$ git clone https://github.com/CaChannel/caffi.git
$ cd caffi
$ python setup.py install

Documents

Latest documents are hosted at Read the Dcos.

Example

import caffi.ca as ca

status = ca.create_context()
assert status == ca.ECA.NORMAL

status, chid = ca.create_channel('catest')
assert status == ca.ECA.NORMAL

status = ca.pend_io(3)
assert status == ca.ECA.NORMAL

status = ca.put(chid, 123)
status = ca.flush_io()

status, value = ca.get(chid)
assert status == ca.ECA.NORMAL

status = ca.pend_io(3)
assert status == ca.ECA.NORMAL

assert value.get() == 123

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

caffi-1.0.0b3.tar.gz (3.1 MB view details)

Uploaded Source

Built Distribution

caffi-1.0.0b3-py2.py3-none-any.whl (3.1 MB view details)

Uploaded Python 2Python 3

File details

Details for the file caffi-1.0.0b3.tar.gz.

File metadata

  • Download URL: caffi-1.0.0b3.tar.gz
  • Upload date:
  • Size: 3.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for caffi-1.0.0b3.tar.gz
Algorithm Hash digest
SHA256 7e6680da3aca05c4963e12b5a3ddfbcec355973ea103bbb62c3528e31dfa53d4
MD5 d12e078e1fb51847cadc07da985daa25
BLAKE2b-256 ccd8e22f4ddf4e9e9cc0e4b505b791baf89df528eff4d03ee4adb4229522f9bf

See more details on using hashes here.

File details

Details for the file caffi-1.0.0b3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for caffi-1.0.0b3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2b5521a3915bd2a0aa61233930f125528ecf1afb6890255ffab845150630f720
MD5 e7f6e053551db90c55ba3389b5ca7242
BLAKE2b-256 cd3654a6af65badd47b95051ee63fb661c998d03d2fe00166ba2678172f091b8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page