controlsystem#

class ControlSystem[source]#

Bases: ElementHolder

Abstract class providing access to a control system float variable

abstractmethod attach(dev)[source]#

Return new instances of DeviceAccess objects coming from configuration attached to this CS

abstractmethod attach_array(dev)[source]#

Return new instances of DeviceAccess objects coming from configuration attached to this CS

create_bpm_aggregators(bpms)[source]#
create_magnet_hardware_aggregator(magnets)[source]#

When working in hardware space, 1 single power supply device per multipolar strength is required

create_magnet_strength_aggregator(magnets)[source]#
create_scalar_aggregator()[source]#
fill_device(elements)[source]#

Fill device of this control system with Element coming from the configuration file

Parameters:

elements (list[Element]) – List of elements coming from the configuration file to attach to this control system

abstractmethod get_device(ref)[source]#

Return a device reference for this control system. YAML element configuration passes opaque strings. Public Python APIs may also pass backend ConfigModel instances. Concrete backends own all lookup, parsing and DeviceAccess construction.

get_devices(refs)[source]#

Return a device reference for this control system. YAML element configuration passes opaque strings. Public Python APIs may also pass backend ConfigModel instances. Concrete backends own all lookup, parsing and DeviceAccess construction.

abstractmethod name()[source]#

Return control system name (i.e. live)

abstractmethod scalar_aggregator()[source]#

Returns the module name used for handling aggregator of DeviceAccess

abstractmethod vector_aggregator()[source]#

Returns the module name used for handling aggregator of DeviceVectorAccess

class ControlSystemAdapter[source]#

Bases: ControlSystem

Control system adapter class

attach(dev)[source]#

Return new instances of DeviceAccess objects coming from configuration attached to this CS

attach_array(dev)[source]#

Return new instances of DeviceAccess objects coming from configuration attached to this CS

get_device(ref)[source]#

Return a device reference for this control system. YAML element configuration passes opaque strings. Public Python APIs may also pass backend ConfigModel instances. Concrete backends own all lookup, parsing and DeviceAccess construction.

name()[source]#

Return control system name (i.e. live)

scalar_aggregator()[source]#

Returns the module name used for handling aggregator of DeviceAccess

vector_aggregator()[source]#

Returns the module name used for handling aggregator of DeviceVectorAccess