pyaml_cs_oa.controlsystem#

PyAML control-system integration built on ophyd-async.

Classes

ConfigModel(*, name[, prefix, catalog, ...])

Configuration model for an OA Control System.

OphydAsyncControlSystem(cfg)

Generic PyAML control system using an ophyd-async backend.

class pyaml_cs_oa.controlsystem.ConfigModel(*, name, prefix='', catalog=None, debug_level=None)#

Bases: BaseModel

Configuration model for an OA Control System.

name#

Name of the control system.

Type:

str

prefix#

Prefix added to the PV or attribute name. It can be a for instance, TANGO_HOST, or a PV prefix.

Type:

str

catalog#

Catalog instance or catalog name used to resolve PyAML device keys. If None specified a dynamic catalog is used.

Type:

Catalog | None

debug_level#

Debug verbosity level.

Type:

str

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class pyaml_cs_oa.controlsystem.OphydAsyncControlSystem(cfg)#

Bases: ControlSystem

Generic PyAML control system using an ophyd-async backend.

attach(devs)#

Attach configured signals; retained for compatibility.

attach_array(devs)#

Attach an array of configured signals; retained for compatibility.

get_aggregator()#

Return a new empty aggregator for batched device operations.

get_device_access(ref)#

Resolve or construct a device-access object from a reference.

name()#

Return the name of the control system.

Returns:

str – Name of the control system.

Return type:

str