FNCC component manager

This module implements the component management for fncc.

class FnccComponentManager(logger, communication_state_callback, component_state_callback, attribute_change_callback, pasd_fqdn, event_serialiser=None, _pasd_bus_proxy=None)

A component manager for an fncc.

This communicates via a proxy to a MccsPasdBus that talks to a simulator or the real hardware.

__init__(logger, communication_state_callback, component_state_callback, attribute_change_callback, pasd_fqdn, event_serialiser=None, _pasd_bus_proxy=None)

Initialise a new instance.

Parameters:
  • logger (Logger) – a logger for this object to use

  • communication_state_callback (Callable[[CommunicationStatus], None]) – callback to be called when the status of the communications channel between the component manager and its component changes

  • component_state_callback (Callable[..., None]) – callback to be called when the component state changes

  • attribute_change_callback (Callable[..., None]) – callback to be called when a attribute changes

  • pasd_fqdn (str) – the fqdn of the pasdbus to connect to.

  • event_serialiser (Optional[EventSerialiser]) – the event serialiser to be used by this object.

  • _pasd_bus_proxy (Optional[MccsDeviceProxy]) – a optional injected device proxy for testing purposes only. defaults to None

cleanup()

Delete and clean up any remaining processes.

Return type:

None

start_communicating()

Establish communication with the pasdBus via a proxy.

Return type:

None

stop_communicating()

Break off communication with the pasdBus.

Return type:

None