CbfSubarray Class

class ska_mid_cbf_mcs.subarray.subarray_device.CbfSubarray(*args: Any, **kwargs: Any)[source]

Bases: CbfObsDevice

CbfSubarray TANGO device class for the prototype

ControllerFQDN

Fully Qualified Domain Name (FQDN) for the MCS CbfController device.

VccAllBandsFQDNs

Fully Qualified Domain Names (FQDNs) for all of the FHS VCCAllBandsController devices.

FspFQDNs

Fully Qualified Domain Names (FQDNs) for all of the MCS Fsp devices.

FspCorrSubarrayFQDNs

Fully Qualified Domain Names (FQDNs) for the MCS FspCorrSubarray devices for this subarray.

delay_model_signal: AttrSignal[str]

Signal for the delayModel attribute. Values are emitted for this signal whenever a client changes the attribute.

obs_state_signal: AttrSignal[ObsState]

Signal for the obsState attribute. Values are emitted for this signal whenever a client changes the attribute.

frequency_band_signal: AttrSignal[int]

Signal for the frequencyBand attribute. Values are emitted for this signal whenever a client changes the attribute.

dish_ids_signal: AttrSignal[list[str]]

Signal for the dishIDs attribute. Values are emitted for this signal whenever a client changes the attribute.

vcc_ids_signal: AttrSignal[list[int]]

Signal for the assignedVCCs attribute. Values are emitted for this signal whenever a client changes the attribute.

fsp_ids_signal: AttrSignal[list[int]]

Signal for the assignedFSPs attribute. Values are emitted for this signal whenever a client changes the attribute.

sys_param_signal: AttrSignal[str]

Signal for the sysParam attribute. Values are emitted for this signal whenever a client changes the attribute.

frequencyBand: attribute_from_signal

frequencyBand device attribute

dishIDs: attribute_from_signal

dishIDs device attribute

assignedVCCs: attribute_from_signal

assignedVCCs device attribute

assignedFSPs: attribute_from_signal

assignedFSPs device attribute

sysParam: attribute_from_signal

sysParam device attribute

assign_resources_name = 'AssignResources'
release_resources_name = 'ReleaseResources'
release_all_resources_name = 'ReleaseAllResources'
restart_name = 'Restart'
write_sysParam(value: str) None[source]

Update the subarray’s system parameters

Parameters:

value – JSON-formatted string containing system parameters

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

Check if AssignResources 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.

AssignResources(params: str) tuple[list[ResultCode], list[str]][source]

Assign input dishIDs to this subarray. Set subarray to ObsState.IDLE if no dishIDs were previously assigned, i.e. subarray was previously in ObsState.EMPTY.

Parameters:

params – JSON string conforming to the ska-mid-cbf-assignresources schema containing a list of DISH (receptor) IDs to add

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

Return type:

(ResultCode, str)

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

Check if ReleaseResources 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.

ReleaseResources(params: str) tuple[list[ResultCode], list[str]][source]

Remove input from list of assigned dishIDs. Set subarray to ObsState.EMPTY if no dishIDs assigned.

Parameters:

params – JSON string conforming to the ska-mid-cbf-assignresources schema containing a List of DISH (receptor) IDs to release

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

Return type:

(ResultCode, str)

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

Check if ReleaseAllResources 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.

ReleaseAllResources(params: str) tuple[list[ResultCode], list[str]][source]

Remove all assigned dishIDs. Set subarray to ObsState.EMPTY if no dishIDs assigned.

Parameters:

params – JSON string conforming to the ska-mid-cbf-releasedalresources schema

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

Return type:

(ResultCode, str)

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

Check if Restart 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.

Restart(params: str) tuple[list[ResultCode], list[str]][source]

Restart the observing device from a FAULT/ABORTED obsState to EMPTY.

Parameters:

params – “JSON string conforming to the ska-mid-cbf-restart schema

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

create_component_manager() CbfSubarrayComponentManager[source]

Create and return a subarray component manager.

Returns:

a subarray component manager