mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-11-12 13:30:12 -05:00
Major change to sequencer API.
The sequencer API is totally recoded with the style of "encapsulation" in other api. The structure becomes opaque and accessed only via functions. Other changes: - There is no longer group in client and port info. - snd_seq_query_subs_t is renamed to snd_seq_query_subscribe_t. - snd_seq_delete_port takes only the port id argument instead of port_info structure. - snd_seq_input/output_buffer_size are renamed as snd_seq_get_input/output_buffer_size. Similarly snd_seq_resize_input/output_buffer are renamed as snd_seq_set_input/output_buffer_size. - snd_seq_get_named_queue is renamed to snd_seq_query_named_queue. - Sync codes are removed temporarily from API. - Subscription conditions are accessed via the corresponding functions. convert_time is named now as time_update. - snd_seq_get/set_queue_owner are removed. Use snd_seq_get/set_queue_info instead. - Instrument put/get/remove structure is unified as snd_instr_header_t.
This commit is contained in:
parent
d23ff765ad
commit
88e5e45151
20 changed files with 4410 additions and 1691 deletions
55
src/seq/seq_event.c
Normal file
55
src/seq/seq_event.c
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
/**
|
||||
* \file seq/seq_event.c
|
||||
* \author Takashi Iwai <tiwai@suse.de>
|
||||
* \date 2001
|
||||
*/
|
||||
|
||||
#include "../../include/asoundlib.h"
|
||||
|
||||
#define FIXED_EV(x) (_SND_SEQ_TYPE(SND_SEQ_EVFLG_FIXED) | _SND_SEQ_TYPE(x))
|
||||
|
||||
const unsigned int snd_seq_event_types[256] = {
|
||||
[SND_SEQ_EVENT_SYSTEM ... SND_SEQ_EVENT_RESULT]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_RESULT),
|
||||
[SND_SEQ_EVENT_NOTE]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_NOTE) | _SND_SEQ_TYPE_OPT(SND_SEQ_EVFLG_NOTE_TWOARG),
|
||||
[SND_SEQ_EVENT_NOTEON ... SND_SEQ_EVENT_KEYPRESS]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_NOTE),
|
||||
[SND_SEQ_EVENT_CONTROLLER ... SND_SEQ_EVENT_REGPARAM]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_CONTROL),
|
||||
[SND_SEQ_EVENT_START ... SND_SEQ_EVENT_STOP]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_QUEUE),
|
||||
[SND_SEQ_EVENT_SETPOS_TICK]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_QUEUE) | _SND_SEQ_TYPE_OPT(SND_SEQ_EVFLG_QUEUE_TICK),
|
||||
[SND_SEQ_EVENT_SETPOS_TIME]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_QUEUE) | _SND_SEQ_TYPE_OPT(SND_SEQ_EVFLG_QUEUE_TIME),
|
||||
[SND_SEQ_EVENT_TEMPO ... SND_SEQ_EVENT_SYNC_POS]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_QUEUE) | _SND_SEQ_TYPE_OPT(SND_SEQ_EVFLG_QUEUE_VALUE),
|
||||
[SND_SEQ_EVENT_TUNE_REQUEST ... SND_SEQ_EVENT_SENSING]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_NONE),
|
||||
[SND_SEQ_EVENT_ECHO ... SND_SEQ_EVENT_OSS]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_RAW) | FIXED_EV(SND_SEQ_EVFLG_SYSTEM),
|
||||
[SND_SEQ_EVENT_CLIENT_START ... SND_SEQ_EVENT_PORT_CHANGE]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_MESSAGE),
|
||||
[SND_SEQ_EVENT_PORT_SUBSCRIBED ... SND_SEQ_EVENT_PORT_UNSUBSCRIBED]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_CONNECTION),
|
||||
[SND_SEQ_EVENT_SAMPLE ... SND_SEQ_EVENT_SAMPLE_PRIVATE1]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_SAMPLE),
|
||||
[SND_SEQ_EVENT_USR0 ... SND_SEQ_EVENT_USR9]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_RAW) | FIXED_EV(SND_SEQ_EVFLG_USERS),
|
||||
[SND_SEQ_EVENT_INSTR_BEGIN ... SND_SEQ_EVENT_INSTR_CHANGE]
|
||||
= _SND_SEQ_TYPE(SND_SEQ_EVFLG_INSTR) | _SND_SEQ_TYPE(SND_SEQ_EVFLG_VARUSR),
|
||||
[SND_SEQ_EVENT_SYSEX ... SND_SEQ_EVENT_BOUNCE]
|
||||
= _SND_SEQ_TYPE(SND_SEQ_EVFLG_VARIABLE),
|
||||
[SND_SEQ_EVENT_USR_VAR0 ... SND_SEQ_EVENT_USR_VAR4]
|
||||
= _SND_SEQ_TYPE(SND_SEQ_EVFLG_VARIABLE) | _SND_SEQ_TYPE(SND_SEQ_EVFLG_USERS),
|
||||
#if 0 // NYI
|
||||
[SND_SEQ_EVENT_IPCSHM]
|
||||
= _SND_SEQ_TYPE(SND_SEQ_EVFLG_IPC),
|
||||
[SND_SEQ_EVENT_USR_VARIPC0 ... SND_SEQ_EVENT_USR_VARIPC4]
|
||||
= _SND_SEQ_TYPE(SND_SEQ_EVFLG_IPC) | _SND_SEQ_TYPE(SND_SEQ_EVFLG_USERS),
|
||||
#endif
|
||||
[SND_SEQ_EVENT_NONE]
|
||||
= FIXED_EV(SND_SEQ_EVFLG_NONE),
|
||||
};
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue