BusListenerFactory

class mtf.network_port.bus_manager.BusListenerFactory

Factory class for creating bus listeners based on bus type.

listeners_factory: Dict[EthProtocolType | int, Type[CanBusListener] | Type[IoListener] | Type[LinBusListener] | Type[FlexrayBusListener] | Type[EthBusListener]] = {BusType.CAN: <class 'mtf.network_port.bus_listener.CanBusListener'>, BusType.CANFD: <class 'mtf.network_port.bus_listener.CanBusListener'>, BusType.LIN: <class 'mtf.network_port.bus_listener.LinBusListener'>, BusType.FLEXRAY: <class 'mtf.network_port.bus_listener.FlexrayBusListener'>, BusType.ETHERNET: <class 'mtf.network_port.eth_bus_listener.EthBusListener'>, BusType.IO: <class 'mtf.network_port.bus_listener.IoListener'>}

Factory lookup table

classmethod get_listener(bus_type: BusType) Type[CanBusListener] | Type[IoListener] | Type[LinBusListener] | Type[FlexrayBusListener] | Type[EthBusListener] | None

Get a bus listener class based on bus type.

Args:

bus_type: BusType enum value representing the type of the bus.

Returns:

Type[BusListener]: Class representing the bus listener for the given bus type.