fastcs.controllers.base_controller#

Members

BaseController

Base class for controllers

class fastcs.controllers.base_controller.BaseController(path: list[str] | None = None, description: str | None = None, ios: Sequence[AttributeIO[Any, AttributeIORef]] | None = None)[source]#

Base class for controllers

Instances of this class can be loaded into FastCS to expose its Attributes to the transport layer, which can then perform a specific function such as generating a UI or creating parameters for a control system.

This class is public for type hinting purposes, but should not be inherited to implement device drivers. Use either Controller or ControllerVector instead.

async initialise()[source]#

Hook for subclasses to dynamically add attributes before building the API

post_initialise()[source]#

Hook to call after all attributes added, before serving the application

property path: list[str]#

Path prefix of attributes, recursively including parent Controllers.