something to read
This commit is contained in:
@@ -6,7 +6,7 @@ _slic_ is a re-write/re-factor of [_eco_](https://github.com/paulscherrerinstitu
|
||||
|
||||
_slic_ consists of a [core](#sliccore) library for static recording and scans as well as a [devices](#slicdevices) library containing classes that represent physical devices. As work-in-progress, the core library has seen most changes so far while the devices have not been worked on as much. Furthermore, there's a [GUI](#slicgui) frontend built on top of _slic_ as backend included.
|
||||
|
||||
The beamline codes can be found here:
|
||||
The beamline codes can be found [here](https://gitlab.psi.ch/slic):
|
||||
|
||||
- [Alvra](https://gitlab.psi.ch/slic/alvra)
|
||||
- [Bernina](https://gitlab.psi.ch/slic/bernina)
|
||||
@@ -29,7 +29,7 @@ The core library contains
|
||||
- [epics PVs](https://github.com/pyepics/pyepics#pv-object-oriented-ca-interface)
|
||||
- **adjustable** — ABC for physical/virtual devices that can be moved or otherwise adjusted. The `PVAdjustable` class handles interaction with the typical set of epics PV defining a device (set value, readback, moving status). A generic class is also provided, which turns a getter/setter pair into an adjustable.
|
||||
- **condition** — Classes that collect statistics over a given time window and test whether a value was in a specified range often enough. This allows to define what conditions are considered good enough for a recording.
|
||||
- **device** — Representation of larger hardware components that consist of several adjustables. Devices can also be nested allowing to represent, e.g, a whole beamline. `SimpleDevice` is a straight-forward interface for creating devices. The included collection of device implementations may in [`slic.devices`](#slic.devices).
|
||||
- **device** — Representation of larger hardware components that consist of several adjustables. Devices can also be nested allowing to represent, e.g, a whole beamline. `SimpleDevice` is a straight-forward interface for creating devices. The included collection of device implementations can be found in [`slic.devices`](#slic.devices).
|
||||
- **task** — Simplifying wrappers for python's [threading.Thread](https://docs.python.org/3/library/threading.html#threading.Thread), which allow return values and forward exceptions raised within a thread to the calling scope. A nicer `__repr__` makes tasks easier to use in ipython. More specific tasks are also available: the DAQTask can hold information about the files it is writing, and the Loop comes in two variants (infinite and with time out) that both call a function repeatedly.
|
||||
|
||||
### Overview: Interactions of these building blocks:
|
||||
|
||||
Reference in New Issue
Block a user