fastcs.controller#

Members

BaseController

Base class for controller.

Controller

Top-level controller for a device.

class fastcs.controller.BaseController(path: list[str] | None = None, description: str | None = None, ios: Sequence[AttributeIO[T, AttributeIORefT]] | None = None)[source]#

Base class for controller.

attributes: dict[str, Attribute]#

Attributes passed from the device at runtime.

async attribute_initialise() None[source]#

Register update and send callbacks for attributes on this controller and all subcontrollers

property path: list[str]#

Path prefix of attributes, recursively including parent Controllers.

class fastcs.controller.Controller(description: str | None = None, ios: Sequence[AttributeIO[T, AttributeIORefT]] | None = None)[source]#

Top-level controller for a device.

This is the primary class for implementing device support in FastCS. Instances of this class can be loaded into a backend to access its Attribute``s. The backend can then perform a specific function with the set of ``Attributes, such as generating a UI or creating parameters for a control system.