Eventful screen

This class is a wrapper for a screen with an event manager. It is used by experiment runner and returned by screen sequencers. It should not be subclassed or used on its own.

It can also be passed a callback to be called when the screen is shown.

class src.data_acquisition.eventful_screen.EventfulScreen(*, screen: ~src.data_acquisition.screens.screen.Screen, event_manager: ~src.data_acquisition.event_manager.event_manager.EventManager[~src.data_acquisition.eventful_screen.T], screen_show_callback: ~typing.Callable[[], None] = <function EventfulScreen.<lambda>>)[source]

Bases: Generic[T]

exit() None[source]

Stops the event manager after exiting the screen.

show(*, end_callback: Callable[[T], None]) None[source]

Starts the event manager and shows the screen.