RECV Component Manager
This module provides an implementation of the BEAM PST component manager.
- class ska_pst_lmc.beam.beam_component_manager.PstBeamComponentManager(*args: Any, **kwargs: Any)[source]
Component manager for the BEAM component in PST.LMC.
Since the BEAM component is a logical device, this component manager is used to orchestrate the process devices, such as BEAM, RECV.
Commands that are executed on this component manager are sent to instances of
PstDeviceProxy
for each device that the BEAM device manages.This component manager only takes the fully-qualified device name (FQDN) for the remote devices, but uses the
DeviceProxyFactory
to retrieve instances of the device proxies that commands should be sent to.Initialise component manager.
- Parameters
smrb_fqdn – the fully qualified device name (FQDN) of the shared memory ring buffer (SMRB) TANGO device.
recv_fqdn – the FQDN of the Receive TANGO device.
dsp_fqdn – the FQDN of the Digital Signal processing (DSP) TANGO device.
simulation_mode – enum to track if component should be in simulation mode or not.
logger – a logger for this object to use
communication_status_changed_callback – callback to be called when the status of the communications channel between the component manager and its component changes
component_fault_callback – callback to be called when the component faults (or stops faulting)
- property misordered_packets: int
Get the total number of packets received out of order in the current scan.
- property misordered_packet_rate: float
Get the current rate of packets received out of order in packets/sec.
- property misdirected_packet_rate: float
Get the current rate of misdirected packets in packets/sec.
- property checksum_failure_packets: int
Get the total number of packets with checksum failures for the current scan.
- property checksum_failure_packet_rate: float
Get the current rate of packets with checksum failures in packets/sec.
- property timestamp_sync_error_packets: int
Get the total number of packets with timestamp sync errors for the current scan.
- property timestamp_sync_error_packet_rate: float
Get the current rate of packets with timestamp sync errors in packets/sec.
- property seq_number_sync_error_packets: int
Get the total number of packets with seq.
number sync error for the current scan.
- property seq_number_sync_error_packet_rate: float
Get the current rate of packets with seq.
number sync error in packets/sec.
- property disk_used_percentage: float
Get the percentage of used disk space for recording of scan data.
- property available_recording_time: float
Get the available recording time, for the disk being written to during the scan, in seconds.
- property ring_buffer_utilisation: float
Get current utilisation of ring buffer for current scan configuration.
- property expected_data_record_rate: float
Get the expected data rate for DSP output for current scan configuration.
- update_admin_mode(admin_mode: ska_tango_base.control_model.AdminMode) None [source]
Update the admin mode of the remote devices.
The adminMode of the remote devices should only be managed through the BEAM device, and this method is called from the
PstBeam
device to make sure that the component manager will update the remote devices.
- on(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str]
Turn the component on.
- Parameters
task_callback – callback to be called when the status of the command changes
- off(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str]
Turn the component off.
- Parameters
task_callback – callback to be called when the status of the command changes
- standby(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str]
Put the component is standby.
- Parameters
task_callback – callback to be called when the status of the command changes
- reset(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str]
Reset the component.
- Parameters
task_callback – callback to be called when the status of the command changes
- validate_configure_scan(configuration: Dict[str, Any], task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Validate the configure scan request.
- configure_scan(configuration: Dict[str, Any], task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Configure scan for the component.
- Parameters
configuration (Dict[str, Any]) – the scan configuration.
- deconfigure_scan(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Deconfigure scan for this component.
- start_scan(args: Dict[str, Any], task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Start scanning.
- stop_scan(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Stop scanning.
- abort(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Tell the component to abort whatever it was doing.
- obsreset(task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Reset the component and put it into a READY state.
- go_to_fault(fault_msg: str, task_callback: Optional[Callable[[...], Any]] = None) Tuple[ska_tango_base.executor.TaskStatus, str] [source]
Put all the sub-devices into a FAULT state.