CbfController Class

class ska_mid_cbf_mcs.controller.controller_device.CbfController(*args: Any, **kwargs: Any)[source]

Bases: CbfDevice

CbfController TANGO device class.

Primary point of contact for monitoring and control of Mid.CBF. Implements state and mode indicators, and a set of state transition commands.

SubarrayFQDNs

Fully Qualified Domain Names (FQDNs) of the MCS CbfSubarray devices.

VccUnitFQDNs

Fully Qualified Domain Names (FQDNs) of the MCS VccUnit devices.

FspUnitFQDNs

Fully Qualified Domain Names (FQDNs) of the MCS FspUnit devices.

MaxCapabilities

Maximum Mid.CBF resource capabilities, including subarrays, VCCs and FSPs.

VccIDToVccUnitIDMapping

Mapping of VCC IDs to VCC Unit IDs.

sysParam

Maps Dish ID to VCC and frequency offset k. The string is in JSON format.

sourceSysParam

Source and file path to the file to be retrieved through the Telescope Model. The string is in JSON format.

dishToVcc

vccID’.

Type:

Dish ID to VCC mapping. The string is in the format ‘dishID

vccToDish

dishID’.

Type:

VCC to Dish mapping. The string is in the format ‘vccID

maxCapabilities

4’, ‘Subarray:1’.

Type:

Maximum number of instances of each capability type, e.g. ‘VCC

Type:

4’, ‘FSP

validateSupportedConfiguration

Flag to indicate if a restrictive validation is requested for supported configurations, such as with Scan Configurations. Defaults to True. Setting the flag to False can cause unexpected behaviour with the system.

resourceStatus

JSON string that contains ResourceStatus for all the FSP unit and VCC units available to the controller. The JSON string will be formatted according to the ResourceStatus schema found in SKA Telmodel.

is_On_allowed(request_type: LRCReqType = LRCReqType.ENQUEUE_REQ) bool[source]

Check if On is allowed.

Parameters:

request_type – if LRCReqType.ENQUEUE_REQ, the task has only been submitted to the LRC queue, and this method will always return True; otherwise, task has been popped off the LRC queue, and the command allowance can be checked.

Returns:

True if allowed, else False.

On() tuple[list[ResultCode], list[str]][source]

Set Mid.CBF subarrays to AdminMode.ONLINE

Returns:

tuple containing a return code and a unique command identifier

is_Off_allowed(request_type: LRCReqType = LRCReqType.ENQUEUE_REQ) bool[source]

Check if Off is allowed.

Parameters:

request_type – if LRCReqType.ENQUEUE_REQ, the task has only been submitted to the LRC queue, and this method will always return True; otherwise, task has been popped off the LRC queue, and the command allowance can be checked.

Returns:

True if allowed, else False.

Off() tuple[list[ResultCode], list[str]][source]

Set Mid.CBF subarrays to AdminMode.ONLINE

Returns:

tuple containing a return code and a unique command identifier

is_InitSysParam_allowed(request_type: LRCReqType = LRCReqType.ENQUEUE_REQ) bool[source]

Check if InitSysParam is allowed.

Parameters:

request_type – if LRCReqType.ENQUEUE_REQ, the task has only been submitted to the LRC queue, and this method will always return True; otherwise, task has been popped off the LRC queue, and the command allowance can be checked.

Returns:

True if allowed, else False.

InitSysParam(sys_params: str) tuple[list[ResultCode], list[str]][source]

This command sets the Dish ID - VCC ID mapping and k values

Parameters:

sys_params – the Dish ID - VCC ID mapping and frequency offset (k) in a json string.

Returns:

tuple containing a return code and a unique command identifier

is_SetResourceAdminMode_allowed(request_type: LRCReqType = LRCReqType.ENQUEUE_REQ) bool[source]

Check if SetResourceAdminMode is allowed.

Parameters:

request_type – if LRCReqType.ENQUEUE_REQ, the task has only been submitted to the LRC queue, and this method will always return True; otherwise, task has been popped off the LRC queue, and the command allowance can be checked.

Returns:

True if allowed, else False.

SetResourceAdminMode(admin_mode_params: str) tuple[list[ResultCode], list[str]][source]

This command sets the admin mode of the specified FSP and VCC Unit

Parameters:

admin_mode_params – the admin mode and the resource id (i.e. FSP and VCC Unit id) in a json string

Returns:

tuple containing a return code and a unique command identifier

create_component_manager() ControllerComponentManager[source]

Create and return a component manager for this device.

Returns:

a component manager for this device.