.describing package
Submodules
.describing.inspections module
.describing.mvp_conditions module
.describing.mvp_names module
Module that allows for decoupling tango FQDN names by means of specific and namespaced symbols
- class CBF(tag)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
- allocator() ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
FQDN for low cbf allocator.
- Returns
FQDN for low cbf allocator
- fsp(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.FSP [source]
FQDN for CBF fsp instance
- Parameters
index – index representing the subarray instance (max 25)
- Returns
FQDN for CBF fsp instances
- subarray(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
FQDN for CBF subarray instance
- Parameters
index – index representing the subarray instance (max 16)
- Returns
FQDN for CBF subarray instance
- tags = ('cbf scope', 'csp scope', 'cbf')
- vcc(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.VCC [source]
FQDN namespace for VCC for CBF
- Parameters
index – index representing the VCC instance
- Returns
FQDN namespace for VCC for CBF
- class CSP(tag)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
- subarray(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
FQDN for CSP subarray instance
param index: index representing the subarray instance (max 16)
- Returns
FQDN for CSP subarray instance as a DeviceName
- tags = ('csp scope', 'csp')
- class Correlator(tag: str, index: int)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.FSPSubelement
Represent tango FQDN names for the Correlator FSP Subelement.
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing import mvp_names device = get_device_proxy(mvp_names.Correlator)
Note that Correlator is a Symbol class which means you can give the direct object to the
ska_ser_skallop.connectors.configuration.get_device_proxy()
function.- type = 'corr'
- class DeviceName(name: str, *tags: str)[source]
Bases:
ska_ser_skallop.utils.generic_classes.Symbol
An object that binds additional tag metadata to a particular device FQDN name to facilitate searching devices based on categories (tags)
- property enabled: bool
Whether the device is withing currently set scoped or not.
- Returns
True if the device is within the scope.
- filter(*tags: str) Optional[ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName] [source]
checks if the device are within a given set of categories indicated by the tags :returns: itself if the deice are within the given tags, otherwise None
- tags: Tuple
a Tuple of tags that applies user defined categories to the name
- class DomainList(token: Optional[Union[int, List[ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName]]])[source]
Bases:
object
Abstract/generic class that contains a list of
DeviceName
objects within a particular domain. For example a list of all the dishes. A domain list implements a set of basic binary operations on the collective as a whole e.g. :- filterables() collections.Counter [source]
Generate a summary of tags.
The summary is a mapping from tag to a frequency count of their occurrence; e.g.
- Returns
a Counter object containing the nr of occurrences for each tag
- property list: List[str]
The list of devices names (excluding their metadata) that this object represents. Use this when you want to instantiate a particular device e.g.:
- Returns
a list of device names as FQDN strings
- subtract(tag: str) ska_ser_skallop.mvp_control.describing.mvp_names.DomainList [source]
Remove or filter out the set of devices that have a given tag.
- Returns
a new DomainList object with the devices belonging to the given tag removed
- class FSP(tag: str, index: int)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
,ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName
Represent tango FQDN names for the FSP element.
e.g.
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing import mvp_names corr = get_device_proxy(mvp_names.Correlator) corr = get_device_proxy(mvp_names.PSS)
Note that FSPSubElement is a Symbol class which means you can give the direct object to the
ska_ser_skallop.connectors.configuration.get_device_proxy()
function.- correlator
Represent tango FQDN names for the Correlator FSP Subelement.
- pulsar_search
Represent tango FQDN names for the PSS FSP Subelement.
- pulsar_timing(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
Represent tango FQDN names for the Pulsar timing FSP Subelement
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing import mvp_names pss = get_device_proxy(Mid.csp.cbf.fsp(1).pulsar_timing(1))
- Parameters
index – the particular index (or instance) of pulsar search device
- Returns
the FQDN name as a DeviceName
- tags: Tuple = ('fsp', 'cbf scope', 'csp scope')
a Tuple of tags that applies user defined categories to the name
- vlbi(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
Represent tango FQDN names for the Pulsar timing FSP Subelement
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing import mvp_names pss = get_device_proxy(Mid.csp.cbf.fsp(1).vlbi(1))
- Parameters
index – the particular index (or instance) of the vlbi device
- Returns
the FQDN name as a DeviceName
- class FSPSubelement(tag: str, index: int)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
,ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName
Represent tango FQDN names for the generic FSP Subelement. The actual FQDN name will be determined by the concrete implementation of this class (e.g Correlator or PSS)
e.g.
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing import mvp_names corr = get_device_proxy(mvp_names.Mid.csp.cbf.fsp(1).correlator) pss = get_device_proxy(mvp_names.Mid.csp.cbf.fsp(1).pulsar_search)
Note that FSPSubElement is a Symbol class which means you can give the direct object to the
ska_ser_skallop.connectors.configuration.get_device_proxy()
function.- subarray(nr: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
Represent the tango FQDN name for the FSP Subelement subarray device (namespaced according to the particular concrete implementation)
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing import mvp_names corr_subarray_1 = get_device_proxy( mvp_names.Mid.csp.cbf.fsp(1).correlator.subarray(1) ) pss_subarray_1 = get_device_proxy( mvp_names.Mid.csp.cbf.fsp(1).pulsar_search.subarray(1) )
- Returns
the subarray name as a DeviceName
- tags: Tuple = ('fsp', 'csp domain', 'cbf domain', 'cbf scope')
a Tuple of tags that applies user defined categories to the name
- type = ''
- class Low[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
- csp = <ska_ser_skallop.mvp_control.describing.mvp_names.CSP object>
- mccs = <ska_ser_skallop.mvp_control.describing.mvp_names.MCCS object>
- sdp = <ska_ser_skallop.mvp_control.describing.mvp_names.SDP object>
- tag = 'low'
- tm = <ska_ser_skallop.mvp_control.describing.mvp_names.TMLow object>
- class LowMasters[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
- class LowSubArrays(token: Optional[Union[int, List[ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName]]])[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
- nr_of_fsps = 4
- class MCCS(tag)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
- antenna(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
- station(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
- subarray(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
- subarraybeam(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
- subrack(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
- tags = ('mccs scope', 'mccs')
- class MCCSDevices(token: Optional[Union[int, List[ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName]]])[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
low only
- nr_antenna = 8
- nr_apiu = 2
- nr_beam = 4
- nr_station = 2
- nr_subarray_beam = 4
- nr_tile = 4
- class Masters[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
A specific implementation of Domain List in that it is used to obtain the device names of all the “masters” e.g.
- class Mid[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
Represents a namespace for containing tango FQDNs in the SKA Mid telescope
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing.mvp_names import Mid csp = Mid.csp sdp = Mid.sdp cbf = Mid.csp.cbf tm = Mid.tm fsp1 = cbf.fsp(1) correlator1 = fsp1.correlator pulsar_search1 = fsp1.pulsar_search subarray1 = tm.subarray(1) corr1_sub1 = get_device_proxy(correlator1.subarray(1)) pss1_sub1 = get_device_proxy(pulsar_search.subarray(1)) vlbi1 = get_device_proxy(fsp1.vlbi(1)) csp_master = get_device_proxy(csp.master) csp_subarray1 = get_device_proxy(csp.subarray(1)) cbf_master = get_device_proxy(cbf.master) dish1 = get_device_proxy(Mid.dish(1)) central_node = get_device_proxy(tm.central_node) csp_ln = get_device_proxy(tm.csp_leaf_node) dish_ln = get_device_proxy(tm.dish_leafnode(1)) sdp_ln = get_device_proxy(tm.sdp_leaf_node) sdp_subarray1_ln = get_device_proxy(subarray1.sdp_leaf_node) csp_subarray1_ln = get_device_proxy(subarray1.csp_leaf_node) subarray_1 = get_device_proxy(subarray1) sdp = get_device_proxy(sdp.master) sdp_subarray1 = get_device_proxy(sdp.subarray(1))
- csp = <ska_ser_skallop.mvp_control.describing.mvp_names.CSP object>
SKA Mid csp namespace for tango FQDNs
- static dish(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
FDQN for SKA Mid Dish
- Parameters
index – index representing the instance of the dish
- Returns
FDQN for SKA Mid Dish
- static dishes(ids: List[int]) ska_ser_skallop.mvp_control.describing.mvp_names.DomainList [source]
List of FDQNs for SKA Mid Dishes based on input indices.
- Parameters
ids – List of indices representing the instance of the dish
- Returns
List of FDQNs for SKA Mid Dishes
- sdp = <ska_ser_skallop.mvp_control.describing.mvp_names.SDP object>
SKA Mid sdp namespace for tango FQDNs
- tag = 'mid'
- tm = <ska_ser_skallop.mvp_control.describing.mvp_names.TMMid object>
SKA Mid tm namespace for tango FQDNs
- class MidMasters[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
- class MidSubArrays(token: Optional[Union[int, List[ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName]]])[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
- nr_of_fsps = 4
- class PSS(tag: str, index: int)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.FSPSubelement
Represent tango FQDN names for the PSS FSP Subelement.
from skallop.connectors.configuration import get_device_proxy from skallop.mvp_control.describing import mvp_names pss = get_device_proxy(mvp_names.Mid.csp.cbf.fsp(1).pulsar_search)
Note that PSS is a Symbol class which means you can give the direct object to the
ska_ser_skallop.connectors.configuration.get_device_proxy()
function.- type = 'pss'
- class SDP(tag)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
- subarray(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
FQDN for SDP subarray instance
- Parameters
index – index representing the subarray instance (max 16)
- Returns
FQDN for SDP subarray instance
- tags = ('sdp scope', 'sdp')
- class Sensors(token: Optional[Union[int, List[ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName]]])[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
mid only
- nr_bands = 4
- nr_switches = 2
- class SubArrays(token: Optional[Union[int, List[ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName]]])[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names.DomainList
- nr_of_fsps = 4
- class TEL[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
Represents an abstracted namespace for for containing tango FQDNs for a generic telescope.
- sensors(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DomainList [source]
- subarrays(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DomainList [source]
- class TMLow(tag)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
- subarray(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.TMSubarrayLow [source]
- tags = ('tmc scope', 'tm')
- class TMMid(tag)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
- dish_leafnode(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
FDQN for TM dish leaf node
- Parameters
index – index representing the instance of the dish leaf node
- Returns
FDQN for TM dish leaf node
- subarray(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.TMSubarrayMid [source]
FDQN for TM subarray node
- Parameters
index – index representing the instance of the subarray node
- Returns
FDQN namespace for TM subarray node
- tags = ('tmc scope', 'tm')
- class TMSubarrayLow(index: int, tag: str)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
,ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName
- tags: Tuple = ('tmc scope', 'subarrays', 'tm')
a Tuple of tags that applies user defined categories to the name
- class TMSubarrayMid(index: int, tag: str)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
,ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName
- property node: ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName
- tags: Tuple = ('tmc scope', 'subarrays', 'tm')
a Tuple of tags that applies user defined categories to the name
- class VCC(tag: str, index: int)[source]
Bases:
ska_ser_skallop.mvp_control.describing.mvp_names._NameBase
,ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName
- band_mappings = {1: '12', 2: '3', 3: '4', 4: '5'}
- sw(index: int) ska_ser_skallop.mvp_control.describing.mvp_names.DeviceName [source]
FQDN for VCC switch
- Parameters
index – index representing the VCC switch instance (max 25)
- Returns
FQDN for VCC switch as a DeviceName
- tags: Tuple = ('vcc', 'sensor domain', 'cbf scope', 'csp scope', 'cbf', 'csp')
a Tuple of tags that applies user defined categories to the name