SMRB TANGO Device

Module for providing the SMRB capability for the Pulsar Timing Sub-element.

class ska_pst_lmc.smrb.smrb_device.PstSmrb(*args: Any, **kwargs: Any)[source]

A software TANGO device for managing the SMRB component of the PST.LMC subsystem.

This TANGO device is used to manage the Shared Memory Ring Buffer (SMRB) for the PST.LMC subsystem.

init_device() None[source]

Initialise the attributes and properties of the PstSmrb.

This overrides the CspSubElementSubarray.

create_component_manager() PstSmrbComponentManager[source]

Create and return a component manager for this device.

Returns

a component manager for this device.

always_executed_hook() None[source]

Execute call before any TANGO command is executed.

delete_device() None[source]

Delete resources allocated in init_device.

This method allows for any memory or other resources allocated in the init_device method to be released. This method is called by the device destructor and by the device Init command.

handle_monitor_data_update(monitor_data: SmrbMonitorData) None[source]

Handle monitoring data.

Parameters

monitor_data (SmrbMonitorData) – the latest monitoring data that has been reported.

ringBufferUtilisation() float

Get the percentage of the ring buffer elements that are full of data.

Returns

the percentage of the ring buffer elements that are full of data.

Return type

float

ringBufferSize() int

Get the capacity of the ring buffer, in bytes.

Returns

the capacity of the ring buffer, in bytes.

Return type

int

ringBufferRead() int

Get the amount of data read from the ring buffer, in bytes.

Returns

the amount of data read from then ring buffer, in bytes.

Return type

int

ringBufferWritten() int

Get the amount of data written to the ring buffer, in bytes.

Returns

the amount of data written to the ring buffer, in bytes.

Return type

int

numberSubbands() int

Get the number of sub-bands.

Returns

the number of sub-bands.

Return type

int

subbandRingBufferUtilisations() List[float]

Get the percentage of full ring buffer elements for each sub-band.

Returns

the percentage of full ring buffer elements for each sub-band.

Return type

List[float]

subbandRingBufferSizes() List[int]

Get the capacity of ring buffers for each sub-band.

Returns

the capacity of ring buffers, in bytes, for each sub-band.

Return type

List[int]

subbandRingBufferRead() List[int]

Get the amount of data read, in bytes, for each sub-band.

Returns

the amount of data read, in bytes, for each sub-band.

Return type

List[int]

subbandRingBufferWritten() List[int]

Get the amount of data written, in bytes, for each sub-band.

Returns

the amount of data written, in bytes, for each sub-band.

Return type

List[int]

ska_pst_lmc.smrb.smrb_device.main(args: Optional[list] = None, **kwargs: Any) int[source]

Entry point for module.

Parameters
  • args – positional arguments

  • kwargs – named arguments

Returns

exit code

Return type

int