From 31c9df3037994326b3a6f337c6777eba62e85fae Mon Sep 17 00:00:00 2001 From: Takashi Sakamoto Date: Mon, 18 Nov 2019 13:22:44 +0900 Subject: [PATCH] rawmidi: stream_pair: add virtual function to notify receipt of messages Signed-off-by: Takashi Sakamoto --- src/rawmidi/stream-pair.c | 2 +- src/rawmidi/stream-pair.h | 8 ++++++++ tests/alsarawmidi-stream-pair | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/rawmidi/stream-pair.c b/src/rawmidi/stream-pair.c index f4446ae..ed4294c 100644 --- a/src/rawmidi/stream-pair.c +++ b/src/rawmidi/stream-pair.c @@ -92,7 +92,7 @@ static void alsarawmidi_stream_pair_class_init(ALSARawmidiStreamPairClass *klass g_signal_new("handle_messages", G_OBJECT_CLASS_TYPE(klass), G_SIGNAL_RUN_LAST, - 0, + G_STRUCT_OFFSET(ALSARawmidiStreamPairClass, handle_messages), NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0, NULL); diff --git a/src/rawmidi/stream-pair.h b/src/rawmidi/stream-pair.h index f25c8f3..a5f2afa 100644 --- a/src/rawmidi/stream-pair.h +++ b/src/rawmidi/stream-pair.h @@ -46,6 +46,14 @@ struct _ALSARawmidiStreamPair { struct _ALSARawmidiStreamPairClass { GObjectClass parent_class; + + /** + * ALSARawmidiStreamPairClass::handle_messages: + * @self: A #ALSARawmidiStreamPair. + * + * When any input message in available, this event is emit. + */ + void (*handle_messages)(ALSARawmidiStreamPair *self); }; GType alsarawmidi_stream_pair_get_type(void) G_GNUC_CONST; diff --git a/tests/alsarawmidi-stream-pair b/tests/alsarawmidi-stream-pair index 83a017f..21e79ab 100644 --- a/tests/alsarawmidi-stream-pair +++ b/tests/alsarawmidi-stream-pair @@ -24,6 +24,7 @@ methods = ( 'drain_substream', 'drop_substream', 'create_source', + 'do_handle_messages', ) signals = ( 'handle-messages', -- 2.47.3