Python Middlelayer API¶
The Karabo Hash Dictionary¶
Accessing remote devices with proxies¶
The core functionality of the middle layer is to access other devices. This can also be done from the command line. Accessing other devices is done via proxies:
Accessing remote devices directly¶
There is also a second API without proxies to access remote devices. This is useful if many devices have to be accessed for only a short interaction, that does not warrant the overhead of creating a proxy. It should be noted that most of that overhead is to inquire the current state of devices. This is why there is no non-proxy version to inspect the state of a remote device, as for this it is more efficient to create a proxy.
Running devices on servers¶
Devices can be instantiated and shut down on other device servers.
Inspecting device servers¶
The command line, and devices which inherit
DeviceClientBase
keep track of all other running devices:
Working with devices¶
Functions are provided to work with devices or device proxies
Working with Configurations and Timestamps¶
Retrieve historic configuration information about a device:
Working with named configurations:
The command line also provides functions to compare device configurations:
Util functions¶
Utility functions are provided for convenience.
Writing a device¶
Synchronization¶
Synchronization primitives¶
Karabo descriptors¶
The atomic Karabo descriptors¶
Descriptor categories¶
The atomic data types are grouped by several categories. They are abstract classes only.
The atomic Karabo descriptors¶
The following descriptors represent the atomic data types that Karabo can handle: