vmcp.facades
facades
module of vmcp
package.
1#!/usr/bin/env python3 2# -*- coding: utf-8 -*- 3# SPDX-License-Identifier: AGPL-3.0-or-later 4 5"""``facades`` module of ``vmcp`` package.""" 6 7from collections.abc import Callable 8from .osc.channel import Receiver 9from .events import Event 10 11 12def on_receive( 13 receiver: Receiver, 14 event: type[Event], 15 handler: Callable[[Event], None] 16) -> None: 17 """Event-based receiving handler registration facade method. 18 19 Args: 20 receiver (Receiver): 21 OSC receiver instance. 22 event (type[Event]): 23 Event type class. 24 handler (Callable[[Event], None]): 25 Arbitrary handler function or method. 26 27 """ 28 receiver.register_handler( 29 event.ADDRESS_PATTERN, 30 lambda *args, **kwargs: handler( 31 event.from_message_data(*args, **kwargs) 32 ), 33 ( 34 receiver.system.backend.ARG_READERNAME + 35 receiver.system.backend.ARG_ADDRESS + 36 receiver.system.backend.ARG_DATA 37 ) 38 )
def
on_receive( receiver: vmcp.osc.channel.receiver.Receiver, event: type[vmcp.events.Event], handler: collections.abc.Callable[[vmcp.events.Event], None]) -> None:
13def on_receive( 14 receiver: Receiver, 15 event: type[Event], 16 handler: Callable[[Event], None] 17) -> None: 18 """Event-based receiving handler registration facade method. 19 20 Args: 21 receiver (Receiver): 22 OSC receiver instance. 23 event (type[Event]): 24 Event type class. 25 handler (Callable[[Event], None]): 26 Arbitrary handler function or method. 27 28 """ 29 receiver.register_handler( 30 event.ADDRESS_PATTERN, 31 lambda *args, **kwargs: handler( 32 event.from_message_data(*args, **kwargs) 33 ), 34 ( 35 receiver.system.backend.ARG_READERNAME + 36 receiver.system.backend.ARG_ADDRESS + 37 receiver.system.backend.ARG_DATA 38 ) 39 )
Event-based receiving handler registration facade method.
Args: receiver (Receiver): OSC receiver instance. event (type[Event]): Event type class. handler (Callable[[Event], None]): Arbitrary handler function or method.