TANGO Devices
Base classes
The ska_pst_lmc.component module defines common base classes for
PST.LMC TANGO device components. The primary base classes
in this module are
PstComponentManager, which extends the CspObsComponentManager; andPstProcessApi, an abstract class that defines the API of PST.LMC processes like RECV, SMRB, etc.PstBaseDevice, the base class for all TANGO devices in PST.LMC, extends CspSubElementObsDevice
While PstProcessApi is similar to the PstComponentManager, it’s goal is different. The Component Manager uses the API which
will ultimately connect to the actual process or a stubbed/simulator process. It is meant to deal with the communication with
the external process and also not worry about the state model, which is a part of the Component Model.
Common reusable code (i.e. code that can be used by a completely separate project) is to be added to the ska_pst_lmc.util module and not the component submodule.
BEAM Device
This device is a purely logical device for managing all of the PST component
devices (in AA0.5, these are RECV, SMRB, and DSP.DISK).
The BEAM device uses references to a PstDeviceProxy which
is a wrapper around the tango.DeviceProxy class.
This eliminates any need to import TANGO classes within component classes.
The BEAM Component Manager forwards commands to the remote devices that are
configured based on the TANGO device attributes of
RecvFQDN, SmrbFQDN, and DspFQDN.
Component Devices
Component devices extend PstBaseDevice and are used for managing and monitoring the
UDP Packet Capture (RECV) process;
Shared Memory Ring Buffer (SMRB) process; and
Digital Signal Processing (DSP) process
Statistics (STAT) process
Each device uses
a Component Manager extending from
PstComponentManagera process API extending from
PstProcessApia Component Model module; and
a simulator.