|
Packit |
4a16fb |
#include <alsa/asoundlib.h>
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
void dump_event_filter(snd_seq_client_info_t *client_info) {
|
|
Packit |
4a16fb |
int i, b;
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
for (i = 0; i <= 255;) {
|
|
Packit |
4a16fb |
b = snd_seq_client_info_event_filter_check(client_info, i);
|
|
Packit |
4a16fb |
i++;
|
|
Packit |
4a16fb |
printf("%c%s%s", (b ? 'X' : '.'),
|
|
Packit |
4a16fb |
(i % 8 == 0 ? " " : ""),
|
|
Packit |
4a16fb |
(i % 32 == 0 ? "\n" : ""));
|
|
Packit |
4a16fb |
}
|
|
Packit |
4a16fb |
printf("\n");
|
|
Packit |
4a16fb |
}
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
int main(void) {
|
|
Packit |
4a16fb |
snd_seq_client_info_t *client_info;
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
snd_seq_client_info_alloca(&client_info);
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
printf("first client_info_event_filter :\n");
|
|
Packit |
4a16fb |
dump_event_filter(client_info);
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);
|
|
Packit |
4a16fb |
printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);\n");
|
|
Packit |
4a16fb |
dump_event_filter(client_info);
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_PGMCHANGE);
|
|
Packit |
4a16fb |
printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_PGMCHANGE);\n");
|
|
Packit |
4a16fb |
dump_event_filter(client_info);
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
snd_seq_client_info_event_filter_del(client_info, SND_SEQ_EVENT_NOTEON);
|
|
Packit |
4a16fb |
printf("after snd_seq_client_info_event_filter_del(client_info, SND_SEQ_EVENT_NOTEON);\n");
|
|
Packit |
4a16fb |
dump_event_filter(client_info);
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
snd_seq_client_info_event_filter_clear(client_info);
|
|
Packit |
4a16fb |
printf("after snd_seq_client_info_event_filter_clear(client_info);\n");
|
|
Packit |
4a16fb |
dump_event_filter(client_info);
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);
|
|
Packit |
4a16fb |
printf("after snd_seq_client_info_event_filter_add(client_info, SND_SEQ_EVENT_NOTEON);\n");
|
|
Packit |
4a16fb |
dump_event_filter(client_info);
|
|
Packit |
4a16fb |
|
|
Packit |
4a16fb |
return 0;
|
|
Packit |
4a16fb |
}
|
|
Packit |
4a16fb |
|