BF-EVENTS - Event Handling
Ver. 1.2.1 (2023-11-18)
This module provides classes for event handling. To this regard, the property class Eventmanager is provided to add event functionality to child classes by inheritence.
- class mlpro.bf.events.Event(p_raising_object, p_tstamp: datetime = None, **p_kwargs)
Bases:
TStamp
Root class for events. It is ready to use and transfers the raising object and further key/value data to the event handler.
- Parameters:
p_raising_object – Reference to object that raised the event.
**p_kwargs – List of named parameters
- get_raising_object()
- get_data()
- class mlpro.bf.events.EventManager(p_logging=True)
Bases:
Log
This property class provides universal event management functionalities to be inherited to child classes.
- Parameters:
p_logging – Log level (see constants of class Log). Default: Log.C_LOG_ALL
- C_TYPE = 'EventManager'
- register_event_handler(p_event_id: str, p_event_handler)
Registers an event handler.
- Parameters:
p_event_id (str) – Unique event id
p_event_handler – Reference to an event handler method with parameters p_event_id and p_event_object:Event
- remove_event_handler(p_event_id: str, p_event_handler)
Removes an already registered event handler.
- Parameters:
p_event_id – Unique event id
p_event_handler – Reference to an event handler method.