From 83c5a607780d7a04d6e0127d0498c7c391a48617 Mon Sep 17 00:00:00 2001 From: Aldrin Martoq Date: Fri, 22 Feb 2008 17:49:01 +0100 Subject: [PATCH] add a test code for snd_seq_client_info_event_filter_*() Added test code for snd_seq_client_info_event_filter_{clear,add,del,check} Signed-off-by: Aldrin Martoq --- test/Makefile.am | 3 ++- test/client_event_filter.c | 46 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 test/client_event_filter.c diff --git a/test/Makefile.am b/test/Makefile.am index b460ba4b..2d7e92b0 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -1,6 +1,6 @@ check_PROGRAMS=control pcm pcm_min latency seq \ playmidi1 timer rawmidi midiloop \ - oldapi queue_timer namehint + oldapi queue_timer namehint client_event_filter control_LDADD=../src/libasound.la pcm_LDADD=../src/libasound.la @@ -14,6 +14,7 @@ midiloop_LDADD=../src/libasound.la oldapi_LDADD=../src/libasound.la queue_timer_LDADD=../src/libasound.la namehint_LDADD=../src/libasound.la +client_event_filter_LDADD=../src/libasound.la code_CFLAGS=-Wall -pipe -g -O2 INCLUDES=-I$(top_srcdir)/include diff --git a/test/client_event_filter.c b/test/client_event_filter.c new file mode 100644 index 00000000..06503141 --- /dev/null +++ b/test/client_event_filter.c @@ -0,0 +1,46 @@ +#include + +void dump_event_filter(snd_seq_client_info_t *client_info) { + int i, b; + + for (i = 0; i <= 255;) { + b = snd_seq_client_info_event_filter_check(client_info, i); + i++; + printf("%c%s%s", (b ? 'X' : '.'), + (i % 8 == 0 ? " " : ""), + (i % 32 == 0 ? "\n" : "")); + } + printf("\n"); +} + +int main(void) { + snd_seq_client_info_t *client_info; + + snd_seq_client_info_alloca(&client_info); + + printf("first client_info_event_filter :\n"); + dump_event_filter(client_info); + + snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON); + printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);\n"); + dump_event_filter(client_info); + + snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_PGMCHANGE); + printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_PGMCHANGE);\n"); + dump_event_filter(client_info); + + snd_seq_client_info_event_filter_del(client_info, SND_SEQ_EVENT_NOTEON); + printf("after snd_seq_client_info_event_filter_del(client_info, SND_SEQ_EVENT_NOTEON);\n"); + dump_event_filter(client_info); + + snd_seq_client_info_event_filter_clear(client_info); + printf("after snd_seq_client_info_event_filter_clear(client_info);\n"); + dump_event_filter(client_info); + + snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON); + printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);\n"); + dump_event_filter(client_info); + + return 0; +} + -- 2.47.1