Skip to main content

FastCS support for the Odin detector software framework

Project description

CI Coverage PyPI License

Odin FastCS

FastCS support for the Odin detector software framework

Source https://github.com/DiamondLightSource/odin-fastcs
PyPI pip install odin-fastcs
Docker docker run ghcr.io/diamondlightsource/odin-fastcs:latest
Documentation https://diamondlightsource.github.io/odin-fastcs
Releases https://github.com/DiamondLightSource/odin-fastcs/releases

Development

Odin FastCS does not do much unless it has an Odin control server to talk to. It is possible to test some functionality in isolation by dumping server responses and creating tests that parse those responses. Responses can be dumped from various Odin systems and tests written against them that can run in CI to ensure support for those systems is not broken. The tests/dump_server_response.py helper script will generate json files for each adapter in an Odin server to write tests against.

Testing against static files is quite restrictive, so a dummy development environment is provided to give developers a consistent live deployment to possible to work against while developing the code. To set this up, run dev/configure.sh with the path to an odin-data install prefix and the path to a venv with odin-control and odin-data installed. This will populate the dev config with your environment - these changes should not be checked in. The dev deployment can then be run with dev/start.sh.

Currently Odin FastCS depends on branches of both odin-control and odin-data, so these branches are provided in dev/requirements.txt for convenience. Make a venv and then pip install -r dev/requirements.txt will give an environment that the control server and meta writer can run in. For the frameProcessor and frameReceiver, check out the fastcs-dev branch of odin-data and build. It is recommended to use the vscode CMake configuration to do this.

If you need to run a dev version of any of the applications, stop that process in the deployment and run/debug it manually. There is a vscode launch config for an odin server using the same config as the dev deployment for this purpose.

At boot time, FastCS will generate UIs that can be opened in Phoebus. This is the clearest way to see the PVs that have been generated for the Odin server. It is also possible to run dbl() in the EPICS shell to print a flat list of PVs.

See https://diamondlightsource.github.io/odin-fastcs for more detailed documentation.

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

odin_fastcs-0.1.0.tar.gz (41.0 kB view details)

Uploaded Source

Built Distribution

odin_fastcs-0.1.0-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file odin_fastcs-0.1.0.tar.gz.

File metadata

  • Download URL: odin_fastcs-0.1.0.tar.gz
  • Upload date:
  • Size: 41.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for odin_fastcs-0.1.0.tar.gz
Algorithm Hash digest
SHA256 452b925dd0dafc1a1076bf8b8bb7f4383162f27fa61d2c8d74caca45218b2e93
MD5 7fec148e3502cd676d1b85180e822aa9
BLAKE2b-256 9b7d974e879eb741113e547c1a3642a974a60cc4901eac644aa3b496a3f9ad25

See more details on using hashes here.

File details

Details for the file odin_fastcs-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: odin_fastcs-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 16.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for odin_fastcs-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 600ce3cf301476a72ef8022832265f435888a4ed38b2a29db40d8e9b48bc55b7
MD5 393024c58dd918599bc5fd8dc3e0153f
BLAKE2b-256 55841ac211434dee5797f84b5c69908cbefaf258444981d1aab2a28d6586ddb0

See more details on using hashes here.

Supported by

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