Subarray Component Manager

This module provides an abstract component manager for SKA Tango subarray devices.

class ska_tango_base.subarray.subarray_component_manager.SubarrayComponentManager[source]

Bases: ObsDeviceComponentManager

An abstract base class for a component manager for an SKA subarray Tango devices.

It supports:

  • Maintaining a connection to its component

  • Controlling its component via commands like AssignResources(), Configure(), Scan(), etc.

  • Monitoring its component, e.g. detect that a scan has completed

__init__(*args: Any, **kwargs: Any) None[source]

Initialise a new ComponentManager instance.

Parameters:
  • args – additional positional arguments

  • kwargs – additional keyword arguments

assign(task_callback: TaskCallbackType | None, **kwargs: Any) tuple[TaskStatus, str][source]

Assign resources to the component.

Parameters:
  • task_callback – callback to be called when the status of the command changes

  • kwargs – keyword arguments. These will be the root keys defined by the command schema.

Raises:

NotImplementedError – This is an abstract class

release(task_callback: TaskCallbackType | None, **kwargs: Any) tuple[TaskStatus, str][source]

Release resources from the component.

Parameters:
  • task_callback – callback to be called when the status of the command changes

  • kwargs – keyword arguments. These will be the root keys defined by the command schema.

Raises:

NotImplementedError – This is an abstract class

release_all(task_callback: TaskCallbackType | None) tuple[TaskStatus, str][source]

Release all resources.

Parameters:

task_callback – callback to be called when the status of the command changes

Raises:

NotImplementedError – This is an abstract class

configure(task_callback: TaskCallbackType | None, **kwargs: Any) tuple[TaskStatus, str][source]

Configure the component.

Parameters:
  • task_callback – callback to be called when the status of the command changes

  • kwargs – keyword arguments. These will be the root keys defined by the command schema.

Raises:

NotImplementedError – This is an abstract class

deconfigure(task_callback: TaskCallbackType | None) tuple[TaskStatus, str][source]

Deconfigure this component.

Parameters:

task_callback – callback to be called when the status of the command changes

Raises:

NotImplementedError – This is an abstract class

scan(task_callback: TaskCallbackType | None, **kwargs: Any) tuple[TaskStatus, str][source]

Start scanning.

Parameters:
  • task_callback – callback to be called when the status of the command changes

  • kwargs – keyword arguments. These will be the root keys defined by the command schema.

Raises:

NotImplementedError – This is an abstract class

end_scan(task_callback: TaskCallbackType | None) tuple[TaskStatus, str][source]

End scanning.

Parameters:

task_callback – callback to be called when the status of the command changes

Raises:

NotImplementedError – This is an abstract class

obsreset(task_callback: TaskCallbackType | None) tuple[TaskStatus, str][source]

Reset the component to unconfigured but do not release resources.

Parameters:

task_callback – callback to be called when the status of the command changes

Raises:

NotImplementedError – This is an abstract class

restart(task_callback: TaskCallbackType | None) tuple[TaskStatus, str][source]

Deconfigure and release all resources.

Parameters:

task_callback – callback to be called when the status of the command changes

Raises:

NotImplementedError – This is an abstract class

property assigned_resources: list[str]

Return the resources assigned to the component.

Raises:

NotImplementedError – the resources assigned to the component

property configured_capabilities: list[str]

Return the configured capabilities of the component.

Raises:

NotImplementedError – list of strings indicating number of configured instances of each capability type