ska_tmc_subarraynode.manager package

Submodules

aggregators

Path: src/ska_tmc_subarraynode/manager/aggregators.py

This Module is for Aggregating the HealthState and

ObsStates of Devices

class ska_tmc_subarraynode.manager.aggregators.HealthStateAggregatorLow(cm, logger)

Bases: Aggregator

The HealthStateAggregatorLow class is an implementation of an aggregator that is responsible for aggregating the health states of various devices in the low telescope.

aggregate()

This method aggregates HealthState for Low Subarray

Return type

IntEnum

class ska_tmc_subarraynode.manager.aggregators.HealthStateAggregatorMid(cm, logger=<Logger ska_tmc_subarraynode.manager.aggregators (WARNING)>)

Bases: Aggregator

The HealthStateAggregatorMid class is an implementation of an aggregator that is responsible for aggregating the health states of various devices in the mid telescope

aggregate()

This method aggregating HealthState in Mid telescope

Return type

IntEnum

class ska_tmc_subarraynode.manager.aggregators.ObsStateAggregatorLow(cm, logger)

Bases: Aggregator

The ObsStateAggregatorLow class is a subclass of the Aggregator class and is responsible for aggregating and managing the observation states of the subarrays

aggregate()

Calculates aggregated observation state of Subarray.

class ska_tmc_subarraynode.manager.aggregators.ObsStateAggregatorMid(cm, logger)

Bases: Aggregator

The ObsStateAggregatorMid class is a subclass of the Aggregator class and is responsible for aggregating and managing the observation states of the subarrays

aggregate()

Calculates aggregated observation state of Subarray.

Return type

Optional[ObsState]

class ska_tmc_subarraynode.manager.aggregators.SubarrayAvailabilityAggregatorLow(component_manager, logger)

Bases: Aggregator

Class to aggregate tmc low subarray device availability depending on tmc low leaf nodes

aggregate()

Aggregates the subarray availability

class ska_tmc_subarraynode.manager.aggregators.SubarrayAvailabilityAggregatorMid(component_manager, logger)

Bases: Aggregator

class to aggregate tmc mid subarray device availability depending on tmc mid leaf nodes

aggregate()

Aggregates the subarray availability

Return type

Tuple[bool, List]

event_receiver

Path: src/ska_tmc_subarraynode/manager/event_receiver.py

This Module is used to Receive events from devices

class ska_tmc_subarraynode.manager.event_receiver.SubarrayNodeEventReceiver(component_manager, logger, max_workers=1, proxy_timeout=500, sleep_time=1)

Bases: EventReceiver

The SubarrayNodeEventReceiver class has the responsibility to receive events from the sub devices managed by the Subarray node.

The ComponentManager uses the handle events methods for the attribute of interest. For each of them a callback is defined.

TBD: what about scalability? what if we have 1000 devices?

check_event_error(event, callback)

Method for checking event error.

property device_attribute_event_ids

A property that stores the device names, the attributes they have subscribed to and the corresponding event ids.

handle_assigned_resources_event(event)

Method for handling assigned resources events.

handle_dish_mode_event(event)

Method for handling dish mode event.

handle_lrcr_event(event)

Method for handling longRunningCommandResult events.

handle_pointing_state_event(event)

Method for handling PointingState event.

handle_receive_addresses_event(event)

Method for handling and receiving addresses events. and to subscribe to pointing_offsets of sdpqc

handle_subsystem_availability_event(event_data)

Method for handling isSubarrayAvailable attribute events.

log_event_data(event_data, callback_name)

Log the event data for later use.

Return type

None

log_event_exit(callback_name)

Log the time of exiting the event.

Return type

None

obs_state_event_callback(event)

Put the obsState event received in a Queue for processing.

Return type

None

set_device_attribute_event_ids(dev_name, attribute_name, event_id)

Stores the value for attribute event id.

Parameters
  • dev_name (str) – Device name for which the event id is being stored.

  • attribute_name (str) – Attribute name for which the event id has to be stored.

  • event_id (int) – Event id for the event subscription

Return type

None

Returns

None

subscribe_events(dev_info, attribute_dictionary=None)

Method for subscribing events

Return type

None

subscribe_to_event(device_proxy, attribute_name, event_callback)

Subscribe to the attribute event for the device with provided callback function. If the event is already subscribed to, return. If not, add the entry to the device_attribute_event_ids dictionary, with the subscription id.

Parameters
  • device_proxy (tango.DeviceProxy) – Device proxy of the device for which event has to be subscribed to.

  • attribute_name (str) – Attribute name for which the event has to be subscribed to.

  • event_callback (Callable[[tango.EventData], None]) – Callback to be used for processing event data

Return type

None

Returns

None

unsubscribe_dish_events()

Method for unsubscribing dish events

Return type

None

unsubscribe_dish_leaf_events()

Method for unsubscribing dish leaf events.

unsubscribe_to_events_with_prefix(prefix)

Method for unsubscribing to events based on a prefix in device name.

Return type

None

subarray_node_component_manager

Path: src/ska_tmc_subarraynode/manager/component_manager.py

This module provided a reference implementation of a BaseComponentManager.

It is provided for explanatory purposes, and to support testing of this package.

class ska_tmc_subarraynode.manager.subarray_node_component_manager.SubarrayNodeComponentManager(op_state_model, obs_state_model, _command_tracker, _input_parameter, logger, _component=None, _update_device_callback=None, _update_subarray_health_state_callback=None, _update_assigned_resources_callback=None, _update_subarray_availability_status_callback=None, _liveliness_probe=True, _event_receiver=True, communication_state_changed_callback=None, component_state_changed_callback=None, command_timeout=30, abort_command_timeout=40, max_workers=5, proxy_timeout=500, sleep_time=1)

Bases: BaseTmcComponentManager, SubarrayComponentManager

A component manager for The Subarray Node component.

It supports:

  • Monitoring its component, e.g. detect that it has been turned off or on

  • Fetching the latest SCM indicator values of the components periodically and trigger the subarray health state and observation state aggregation

  • Receiving the change events from the subarray component and trigger the subarray health state and observation state aggregation

abort(task_callback)

Aborting the subarray.

Return type

Tuple

Returns

a result code and message

add_device_to_lp(device_name)

Add device to the liveliness probe

Parameters

device_name (str) – device name

Return type

None

add_multiple_devices(device_list)

Add multiple devices to the liveliness probe

Parameters

device_list (List) – list of device names

Return type

List

add_similar_low_mid_device(device_name)

Add Similar Low and Mid device to the liveliness probe

Parameters

device_name (str) – device name

Return type

None

assign(argin, task_callback)

Submits AssignResources command as a separate task.

Return type

Tuple

Returns

a result code and message

property assigned_resources

Return the resources assigned to the component.

Returns

the resources assigned to the component

Return type

list of str

check_command_not_allowed_exception(op_state, states_not_allowed, cmd_name)

This method checks command not allowed exception

check_event_error(event, callback)

Method for checking event error.

check_for_incremental_assign_and_revise_obsstate()

This method checks for incremental assign resources and evaluates final obsstate

check_if_sdp_sln_is_available()

Check if the sdp subarray device availability is True.

Return type

bool

check_subarray_device_availability()

Checks if the subarray device availability is True if not, raises exception CommandNotAllowed.

Return type

None

check_successive_configure_revise_obsstate()

This method checks for successive configure resources and evaluates final obsstate

property checked_devices

Return the list of the checked monitored devices

Returns

list of the checked monitored devices

clear_assigned_resources()

Clears assigned resources after the aggregation of obsState EMPTY This method is overridden by the child classes. For Mid it clears dish dev names. For low currently no resources are cleared.

property command_in_progress

Returns the command_in_progress variable :return: command in progress :rtype: str

component_state_changed_callback_and_logging(callback_action, command_in_progress, aggregated_obsstate)

Method calls component_state_changed_callback to complete aggregate obsState change and logs completion message.

Parameters
  • callback_action (Union[list, Dict]) – contains details required by component state changed callback and log statement.

  • command_in_progress (Optional[str]) – name of command in progress

  • aggregated_obsstate (ObsState) – obsstate aggregated from subsystem obsstate values.

Type

dict or list

Type

str or None

Type

ObsState

Return type

None

configure(argin, task_callback)

Configure to allocated Subarray device.

Return type

Tuple

Returns

a result code and message

property devices

Return the list of the monitored devices

Returns

list of the monitored devices

end(task_callback)

End the configuration of Subarray.

Return type

Tuple

Returns

a result code and message

end_scan(task_callback)

End the configuration of Subarray.

Return type

Tuple

Returns

a result code and message

generate_command_result(result_code, message)

Method for generating command result :param result_code : send result_code :type result_code: int :type message: str :param message: message of invoking command

Return type

tuple

get_assigned_resources()
Returns

assigned_resources

Return type

list[str]

get_csp_subarray_dev_name()

Return Csp Subarray device name

Return type

str

get_device(device_name)

Return the device info with device name device_name

Parameters

device_name (str) – name of the device

Returns

a device info

Return type

DeviceInfo

get_mccs_subarray_dev_name()

Returns Mccs Subarray device name

Return type

str

get_sb_id()

Returns sb_id value.

Return type

float

get_scan_duration()

Returns scan_duration value.

get_scan_id()

Returns scan_id value.

get_sdp_subarray_dev_name()

Return Sdp Subarray device name

Return type

str

get_subarray_availability()

Returns subarray availability status

Return type

bool

get_subarray_healthstate()

Returns value of subarray’s health state.

Return type

HealthState

get_subarray_id()

Returns subarray_id value.

Return type

int

get_subarray_obsstate()

Returns aggregated subarray ObsState

Return type

ObsState

get_tmc_csp_sln_device_name()

Return Csp Subarray Leaf Node device name

Return type

str

get_tmc_mccs_sln_device_name()

Return Mccs Subarray Leaf Node device name

Return type

str

get_tmc_sdp_sln_device_name()

Return Sdp Subarray Leaf Node device name

Return type

str

property input_parameter

Return the input parameter

Returns

input parameter

Return type

InputParameter

is_command_allowed(command_name)

Checks whether this command is allowed It checks that the device is in a state to perform this command and that all the component needed for the operation are not unresponsive

Parameters

command_name (str) – name of the command

Returns

True if this command is allowed, False otherwise

Return type

boolean

property is_operation_aborted

Aborted Flag

property is_partial_configuration

Returns True if the configuration is partial.

is_scan_timer_running()

Checks if the scan_timer thread is alive.

off(task_callback)

Submits Off command as a separate task.

Return type

Tuple

Returns

a result code and message

on(task_callback)

Submits On command as a separate task.

Parameters

task_callback (TaskCallbackType, optional) – Update task state, defaults to None

Return type

Tuple

Returns

a result code and message

process_lrcr_event()

Process the obsState events that are present in the Queue.

process_obs_state_event()

Process the obsState events that are present in the Queue.

release_all(task_callback)

Submits ReleaseAllResources command as a separate task.

Return type

Tuple

Returns

a result code and message

remove_devices_from_lp(device_names)

Remove the given devices from liveliness probe.

Parameters

device_names (List[str]) – Device names for devices to be removed from Liveliness Probe

Return type

None

reset()

Method for resetting Not implemented

reset_sb_id()

Resets sb_id value.

Return type

None

reset_scan_duration()

Reset scan_duration value.

reset_scan_id()

Resets scan_id value.

Return type

None

reset_subarray_id()

Resets subarray_id value.

Return type

None

restart(task_callback)

Restarting the subarray.

Return type

Tuple

Returns

a result code and message

scan(argin, task_callback)

Scanning the devices.

Return type

Tuple

Returns

a result code and message

set_assigned_resources(resources)

For SubarrayNode Mid, set assigned_resources with the list of dishes in argin.

Parameters

resources – name of the dish devices

set_sb_id(sb_id)

Sets sb_id value.

Parameters

sb_id – value to set

Type

float

set_scan_duration(scan_duration)

Sets scan_duration value.

Parameters

scan_duration – value to set

Type

float

set_scan_id(scan_id)

Sets scan_id value.

Parameters

scan_id (float) – value to set

Type

float

Return type

None

set_subarray_id(subarray_id)

Sets subarray_id value.

Parameters

sb_id – value to set

Type

float

Return type

None

stop()

Stopping the liveliness probe

stop_event_receiver()

Stops the event receiver

Return type

None

stop_liveliness_probe()

Stops the liveliness probe

Return type

None

stop_scan_timer()

Stops scan_timer thread.

property subarray_obsstate

Keeps track of aggregated subarray ObsState

property unavailable_devices

Returns List of the unavailable_devices.

unsubscribe_dish_events()

Unsubscribes the events for Dishleafnode and Dishmaster

update_assigned_resources(device_name, assigned_resources)

Update assignedResources for a monitored device

Parameters
  • device_name (str) – name of the device

  • assigned_resources (str) – assignedResources

update_device_dish_mode(device_name, dish_mode)

Update the dish mode for given device.

Parameters
  • device_name (str) – name of the device

  • dish_mode (DishMode) – dish mode of the device

update_device_health_state(device_name, health_state)

Update a monitored device health state aggregate the health states available

Parameters
  • device_name (str) – name of the device

  • health_state (HealthState) – health state of the device

Return type

None

update_device_obs_state(device_name, obs_state)

Update a monitored device obs state, and call the relative callbacks if available

Parameters
  • device_name (str) – name of the device

  • obs_state (ObsState) – obs state of the device

update_device_ping_failure(device_info, exception)

Set a device to failed and call the relative callback if available

Parameters
  • device_info (DeviceInfo) – a device info

  • exception (str) – an exception

Type

Exception

Return type

None

update_device_pointing_state(device_name, pointing_state)

Update a monitored device pointing state aggregate the Subarray obs states and Dish pointing states

Parameters
  • device_name (str) – name of the device

  • pointing_state (PointingState) – pointing state of the device

update_device_state(device_name, state)

Update a monitored device state, aggregate the states available and call the relative callbacks if available

Parameters
  • device_name (str) – name of the device

  • state (DevState) – state of the device

Return type

None

update_event_failure(device_name)

Update the event failures if any for the given Device.

Parameters

device_name (str) – name of the device

Return type

None

update_input_parameter()

Updates the input parameter of a class instance with the current state of the instance.

Return type

None

update_long_running_command_result(dev_name, value)

Stores the longRunningCommandResult values for devices and Updates the long_running_result_callback if the required criteria is met (i.e received events from all the expected devices for a given command).

Parameters
  • dev_name (str) – Device name for which the longRunningCommandResult event was received

  • value (Tuple[str, str]) – longRunningCommandResult event value

Return type

None

Returns

None

update_ping_info(ping, device_name)

Update a device with correct ping information.

Parameters
  • device_name (str) – name of the device

  • ping (int) – device response time

Return type

None

update_receive_addresses(device_name, receive_addresses)

Update receiveAddresses for a monitored device

Parameters
  • device_name (str) – name of the device

  • receive_addresses (str) – receiveAddresses

Return type

None

update_subarray_availability_status(device_name, availability_status)

Update a monitored device availability status aggregate the subarray availability

Parameters
  • device_name (str) – name of the device

  • availability_status (isSubarrayAvailable) – availability status of the device

Return type

None

validate_scan_low_json(argin, required_keys)

Method to validate keys for low csp and sdp devices from configure json.

Return type

Tuple

Module contents

Init module for manager

class ska_tmc_subarraynode.manager.HealthStateAggregatorLow(cm, logger)

Bases: Aggregator

The HealthStateAggregatorLow class is an implementation of an aggregator that is responsible for aggregating the health states of various devices in the low telescope.

aggregate()

This method aggregates HealthState for Low Subarray

Return type

IntEnum

class ska_tmc_subarraynode.manager.HealthStateAggregatorMid(cm, logger=<Logger ska_tmc_subarraynode.manager.aggregators (WARNING)>)

Bases: Aggregator

The HealthStateAggregatorMid class is an implementation of an aggregator that is responsible for aggregating the health states of various devices in the mid telescope

aggregate()

This method aggregating HealthState in Mid telescope

Return type

IntEnum

class ska_tmc_subarraynode.manager.ObsStateAggregatorLow(cm, logger)

Bases: Aggregator

The ObsStateAggregatorLow class is a subclass of the Aggregator class and is responsible for aggregating and managing the observation states of the subarrays

aggregate()

Calculates aggregated observation state of Subarray.

class ska_tmc_subarraynode.manager.ObsStateAggregatorMid(cm, logger)

Bases: Aggregator

The ObsStateAggregatorMid class is a subclass of the Aggregator class and is responsible for aggregating and managing the observation states of the subarrays

aggregate()

Calculates aggregated observation state of Subarray.

Return type

Optional[ObsState]

class ska_tmc_subarraynode.manager.SubarrayAvailabilityAggregatorLow(component_manager, logger)

Bases: Aggregator

Class to aggregate tmc low subarray device availability depending on tmc low leaf nodes

aggregate()

Aggregates the subarray availability

class ska_tmc_subarraynode.manager.SubarrayAvailabilityAggregatorMid(component_manager, logger)

Bases: Aggregator

class to aggregate tmc mid subarray device availability depending on tmc mid leaf nodes

aggregate()

Aggregates the subarray availability

Return type

Tuple[bool, List]

class ska_tmc_subarraynode.manager.SubarrayNodeComponentManagerLow(op_state_model, obs_state_model, _command_tracker, _input_parameter, logger=None, _component=None, _liveliness_probe=True, _event_receiver=True, component_state_changed_callback=None, communication_state_changed_callback=None, _update_device_callback=None, _update_subarray_health_state_callback=None, _update_assigned_resources_callback=None, _update_subarray_availability_status_callback=None, command_timeout=30, abort_command_timeout=40, max_workers=5, proxy_timeout=500, sleep_time=1)

Bases: SubarrayNodeComponentManager

Initialise a new ComponentManager instance for low.

add_device_to_lp(device_name)

Add device to the liveliness probe

Parameters

device_name (str) – device name

Return type

None

check_successive_configure_revise_obsstate()

This method checks for successive configure resources and evaluates final obsstate

property configured_capabilities

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

deconfigure()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

get_devices_availability_dict()

Returns the dictionary with the devices and it’s availabiltiy

obsreset()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

release()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

standby()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

start_communicating()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

stop_communicating()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

update_long_running_command_result(dev_name, value)

Stores the longRunningCommandResult values for devices and Updates the long_running_result_callback if the required criteria is met (i.e received events from all the expected devices for a given command).

Parameters
  • dev_name (str) – Device name for which the longRunningCommandResult event was received

  • value (Tuple[str, str]) – longRunningCommandResult event value

Return type

None

Returns

None

class ska_tmc_subarraynode.manager.SubarrayNodeComponentManagerMid(op_state_model, obs_state_model, _command_tracker, _input_parameter, logger=None, _component=None, _liveliness_probe=True, _event_receiver=True, component_state_changed_callback=None, communication_state_changed_callback=None, _update_device_callback=None, _update_subarray_health_state_callback=None, _update_assigned_resources_callback=None, _update_subarray_availability_status_callback=None, command_timeout=30, abort_command_timeout=40, max_workers=5, proxy_timeout=500, sleep_time=1)

Bases: SubarrayNodeComponentManager

Initialise a new ComponentManager instance for mid.

add_device_to_lp(device_name)

Add device to the liveliness probe

Parameters

device_name (str) – device name

Return type

None

clear_assigned_resources()

Removes Dish Leaf Node and Dish Master devices from Input Parameter

Return type

None

property configured_capabilities

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

deconfigure()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

get_devices_availability_dict()

Returns the dictionary with the devices and it’s availabiltiy

get_dish_dev_names()

Return the names of the dishes assigned to Subarray

Return type

List[str]

get_dish_leaf_node_prefix()

Return the Dish Leaf Node prefix

Return type

str

get_keys_required_for_getting_sdpqc_fqdn()

Returns the keys that are required to get sdpqc fqdn from dictionary received from SDP subarray receivedAddresses attribute at runtime

Return type

List

get_tmc_dish_ln_device_names()

Return the names of the dish leaf nodes assigned to Subarray

invoke_pointing_calibration(event_attribute_value)

This method subscribes to the pointing_offsets attribute gathers the required pointing calibration data and invokes TrackLoadStaticOff command.

Parameters

event_attribute_value (string) – receiveAddresses attribute value

Return type

None

obsreset()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

property pointing_calibrations

Gives the current pointing calibrations informed by SDP Queue Connector device.

release()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

remove_dish_devices()

Removes dish devices from component from component

Return type

None

set_dish_device_names(dish_dev_names)

Update the names of the dishes assigned to Subarray

Parameters

dish_dev_names (List) – name of the dish devices

Return type

None

set_keys_required_for_getting_sdpqc_fqdn(set_the_keys)

Set the values that are required to get sdpqc fqdn from dictionary received from SDP subarray receivedAddresses attribute at runtime

Return type

None

set_tmc_leaf_dish_device_names(tmc_dish_ln_device_names)

Update the names of the dish leaf nodes assigned to Subarray

Parameters

tmc_dish_ln_device_names (List) – name of the dish devices

standby()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

start_communicating()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

stop_communicating()

This method serves as a placeholder to address linting warnings or errors related to missing or unused functions. It is intentionally left empty to satisfy linting requirements without affecting the program’s behavior.

class ska_tmc_subarraynode.manager.SubarrayNodeEventReceiver(component_manager, logger, max_workers=1, proxy_timeout=500, sleep_time=1)

Bases: EventReceiver

The SubarrayNodeEventReceiver class has the responsibility to receive events from the sub devices managed by the Subarray node.

The ComponentManager uses the handle events methods for the attribute of interest. For each of them a callback is defined.

TBD: what about scalability? what if we have 1000 devices?

check_event_error(event, callback)

Method for checking event error.

property device_attribute_event_ids

A property that stores the device names, the attributes they have subscribed to and the corresponding event ids.

handle_assigned_resources_event(event)

Method for handling assigned resources events.

handle_dish_mode_event(event)

Method for handling dish mode event.

handle_lrcr_event(event)

Method for handling longRunningCommandResult events.

handle_pointing_state_event(event)

Method for handling PointingState event.

handle_receive_addresses_event(event)

Method for handling and receiving addresses events. and to subscribe to pointing_offsets of sdpqc

handle_subsystem_availability_event(event_data)

Method for handling isSubarrayAvailable attribute events.

log_event_data(event_data, callback_name)

Log the event data for later use.

Return type

None

log_event_exit(callback_name)

Log the time of exiting the event.

Return type

None

obs_state_event_callback(event)

Put the obsState event received in a Queue for processing.

Return type

None

set_device_attribute_event_ids(dev_name, attribute_name, event_id)

Stores the value for attribute event id.

Parameters
  • dev_name (str) – Device name for which the event id is being stored.

  • attribute_name (str) – Attribute name for which the event id has to be stored.

  • event_id (int) – Event id for the event subscription

Return type

None

Returns

None

subscribe_events(dev_info, attribute_dictionary=None)

Method for subscribing events

Return type

None

subscribe_to_event(device_proxy, attribute_name, event_callback)

Subscribe to the attribute event for the device with provided callback function. If the event is already subscribed to, return. If not, add the entry to the device_attribute_event_ids dictionary, with the subscription id.

Parameters
  • device_proxy (tango.DeviceProxy) – Device proxy of the device for which event has to be subscribed to.

  • attribute_name (str) – Attribute name for which the event has to be subscribed to.

  • event_callback (Callable[[tango.EventData], None]) – Callback to be used for processing event data

Return type

None

Returns

None

unsubscribe_dish_events()

Method for unsubscribing dish events

Return type

None

unsubscribe_dish_leaf_events()

Method for unsubscribing dish leaf events.

unsubscribe_to_events_with_prefix(prefix)

Method for unsubscribing to events based on a prefix in device name.

Return type

None