.. _MetaEventTabController: MetaEventTabController ====================== **class MetaEventTabController()** Bases: :ref:`MetaController` Shared base for the Controllers of the two event-oriented analysis tabs. ``RawDataController`` and ``EventAnalysisController`` both drive a tab that works from a reader and a time-series channel rather than from a database of results: the user picks a reader, a filter and a channel, and the tab finds or fits events in the raw signal. The two carried two methods verbatim between them; this base holds that shared half so there is one copy to fix. What a subclass inherits: - ``update_available_plugins``, which passes the app-wide plugin registry down to both the View and the Model when a plugin is instantiated anywhere. - ``_resolve_callable_filter``, which fetches a filter plugin's callable for the paths that need one, or None where none was asked for or it could not be fetched. What a subclass owes it: - **Its own** ``logger = logging.getLogger(__name__)``, so records made by the methods it defines itself stay attributed to its own module. - **``self.view`` and ``self.model``**, built in its ``_init()`` as ``MetaController`` requires. :ivar logger: the module logger the shared methods below log under Public Methods -------------- Abstract Methods ~~~~~~~~~~~~~~~~ These methods must be implemented by subclasses. (none) Concrete Methods ~~~~~~~~~~~~~~~~ .. automethod:: poriscope.utils.MetaEventTabController.MetaEventTabController.update_available_plugins Private Methods --------------- Abstract Methods ~~~~~~~~~~~~~~~~ These methods must be implemented by subclasses. (none)