Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages   Examples  

seq.h File Reference

Application interface library for the ALSA driver. More...

Go to the source code of this file.

Defines

#define SND_SEQ_DLSYM_VERSION   _dlsym_seq_001
#define SND_ALLOCA(type, ptr)
#define SND_SEQ_OPEN_OUTPUT   1 /**< open for output (write) */
#define SND_SEQ_OPEN_INPUT   2 /**< open for input (read) */
#define SND_SEQ_OPEN_DUPLEX   (SND_SEQ_OPEN_OUTPUT|SND_SEQ_OPEN_INPUT) /**< open for both input and output (read/write) */
#define SND_SEQ_NONBLOCK   0x0001 /**< non-blocking mode (flag to open mode) */
#define SND_SEQ_ADDRESS_UNKNOWN   253 /**< unknown source */
#define SND_SEQ_ADDRESS_SUBSCRIBERS   254 /**< send event to all subscribed ports */
#define SND_SEQ_ADDRESS_BROADCAST   255 /**< send event to all queues/clients/ports/channels */
#define SND_SEQ_CLIENT_SYSTEM   0 /**< system client */
#define SND_SEQ_CLIENT_DUMMY   62 /**< dummy ports */
#define SND_SEQ_CLIENT_OSS   63 /**< OSS sequencer emulator */
#define snd_seq_system_info_alloca(ptr)   SND_ALLOCA(snd_seq_system_info, ptr)
#define snd_seq_client_info_alloca(ptr)   SND_ALLOCA(snd_seq_client_info, ptr)
#define snd_seq_client_pool_alloca(ptr)   SND_ALLOCA(snd_seq_client_pool, ptr)
#define SND_SEQ_PORT_SYSTEM_TIMER   0 /**< system timer port */
#define SND_SEQ_PORT_SYSTEM_ANNOUNCE   1 /**< system announce port */
#define SND_SEQ_PORT_CAP_READ   (1<<0) /**< readable from this port */
#define SND_SEQ_PORT_CAP_WRITE   (1<<1) /**< writable to this port */
#define SND_SEQ_PORT_CAP_SYNC_READ   (1<<2) /**< allow read subscriptions */
#define SND_SEQ_PORT_CAP_SYNC_WRITE   (1<<3) /**< allow write subscriptions */
#define SND_SEQ_PORT_CAP_DUPLEX   (1<<4) /**< allow read/write duplex */
#define SND_SEQ_PORT_CAP_SUBS_READ   (1<<5) /**< allow read subscription */
#define SND_SEQ_PORT_CAP_SUBS_WRITE   (1<<6) /**< allow write subscription */
#define SND_SEQ_PORT_CAP_NO_EXPORT   (1<<7) /**< routing not allowed */
#define SND_SEQ_PORT_TYPE_SPECIFIC   (1<<0) /**< hardware specific */
#define SND_SEQ_PORT_TYPE_MIDI_GENERIC   (1<<1) /**< generic MIDI device */
#define SND_SEQ_PORT_TYPE_MIDI_GM   (1<<2) /**< General MIDI compatible device */
#define SND_SEQ_PORT_TYPE_MIDI_GS   (1<<3) /**< GS compatible device */
#define SND_SEQ_PORT_TYPE_MIDI_XG   (1<<4) /**< XG compatible device */
#define SND_SEQ_PORT_TYPE_MIDI_MT32   (1<<5) /**< MT-32 compatible device */
#define SND_SEQ_PORT_TYPE_SYNTH   (1<<10) /**< Synth device */
#define SND_SEQ_PORT_TYPE_DIRECT_SAMPLE   (1<<11) /**< Sampling device (support sample download) */
#define SND_SEQ_PORT_TYPE_SAMPLE   (1<<12) /**< Sampling device (sample can be downloaded at any time) */
#define SND_SEQ_PORT_TYPE_APPLICATION   (1<<20) /**< application (sequencer/editor) */
#define snd_seq_port_info_alloca(ptr)   SND_ALLOCA(snd_seq_port_info, ptr)
#define snd_seq_port_subscribe_alloca(ptr)   SND_ALLOCA(snd_seq_port_subscribe, ptr)
#define snd_seq_query_subscribe_alloca(ptr)   SND_ALLOCA(snd_seq_query_subscribe, ptr)
#define SND_SEQ_QUEUE_DIRECT   253 /**< direct dispatch */
#define snd_seq_queue_info_alloca(ptr)   SND_ALLOCA(snd_seq_queue_info, ptr)
#define snd_seq_queue_status_alloca(ptr)   SND_ALLOCA(snd_seq_queue_status, ptr)
#define snd_seq_queue_tempo_alloca(ptr)   SND_ALLOCA(snd_seq_queue_tempo, ptr)
#define snd_seq_queue_timer_alloca(ptr)   SND_ALLOCA(snd_seq_queue_timer, ptr)
#define SND_SEQ_REMOVE_INPUT   (1<<0) /**< Flush input queues */
#define SND_SEQ_REMOVE_OUTPUT   (1<<1) /**< Flush output queues */
#define SND_SEQ_REMOVE_DEST   (1<<2) /**< Restrict by destination q:client:port */
#define SND_SEQ_REMOVE_DEST_CHANNEL   (1<<3) /**< Restrict by channel */
#define SND_SEQ_REMOVE_TIME_BEFORE   (1<<4) /**< Restrict to before time */
#define SND_SEQ_REMOVE_TIME_AFTER   (1<<5) /**< Restrict to time or after */
#define SND_SEQ_REMOVE_TIME_TICK   (1<<6) /**< Time is in ticks */
#define SND_SEQ_REMOVE_EVENT_TYPE   (1<<7) /**< Restrict to event type */
#define SND_SEQ_REMOVE_IGNORE_OFF   (1<<8) /**< Do not flush off events */
#define SND_SEQ_REMOVE_TAG_MATCH   (1<<9) /**< Restrict to events with given tag */
#define snd_seq_remove_events_alloca(ptr)   SND_ALLOCA(snd_seq_remove_events, ptr)
#define _SND_SEQ_TYPE(x)   (1<<(x)) /**< master type - 24bit */
#define _SND_SEQ_TYPE_OPT(x)   ((x)<<24) /**< optional type - 8bit */
#define snd_seq_type_check(ev, x)   (snd_seq_event_types[(ev)->type] & _SND_SEQ_TYPE(x))
#define snd_seq_ev_is_result_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_RESULT)
#define snd_seq_ev_is_note_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_NOTE)
#define snd_seq_ev_is_control_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_CONTROL)
#define snd_seq_ev_is_channel_type(ev)   (snd_seq_event_types[(ev)->type] & (_SND_SEQ_TYPE(SND_SEQ_EVFLG_NOTE) | _SND_SEQ_TYPE(SND_SEQ_EVFLG_CONTROL)))
#define snd_seq_ev_is_queue_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_QUEUE)
#define snd_seq_ev_is_message_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_MESSAGE)
#define snd_seq_ev_is_subscribe_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_CONNECTION)
#define snd_seq_ev_is_sample_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_SAMPLE)
#define snd_seq_ev_is_user_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_USERS)
#define snd_seq_ev_is_instr_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_INSTR)
#define snd_seq_ev_is_fixed_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_FIXED)
#define snd_seq_ev_is_variable_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_VARIABLE)
#define snd_seq_ev_is_varusr_type(ev)   snd_seq_type_check(ev, SND_SEQ_EVFLG_VARUSR)
#define snd_seq_ev_is_reserved(ev)   (! snd_seq_event_types[(ev)->type])
#define snd_seq_ev_is_prior(ev)   (((ev)->flags & SND_SEQ_PRIORITY_MASK) == SND_SEQ_PRIORITY_HIGH)
#define snd_seq_ev_length_type(ev)   ((ev)->flags & SND_SEQ_EVENT_LENGTH_MASK)
#define snd_seq_ev_is_fixed(ev)   (snd_seq_ev_length_type(ev) == SND_SEQ_EVENT_LENGTH_FIXED)
#define snd_seq_ev_is_variable(ev)   (snd_seq_ev_length_type(ev) == SND_SEQ_EVENT_LENGTH_VARIABLE)
#define snd_seq_ev_is_varusr(ev)   (snd_seq_ev_length_type(ev) == SND_SEQ_EVENT_LENGTH_VARUSR)
#define snd_seq_ev_timestamp_type(ev)   ((ev)->flags & SND_SEQ_TIME_STAMP_MASK)
#define snd_seq_ev_is_tick(ev)   (snd_seq_ev_timestamp_type(ev) == SND_SEQ_TIME_STAMP_TICK)
#define snd_seq_ev_is_real(ev)   (snd_seq_ev_timestamp_type(ev) == SND_SEQ_TIME_STAMP_REAL)
#define snd_seq_ev_timemode_type(ev)   ((ev)->flags & SND_SEQ_TIME_MODE_MASK)
#define snd_seq_ev_is_abstime(ev)   (snd_seq_ev_timemode_type(ev) == SND_SEQ_TIME_MODE_ABS)
#define snd_seq_ev_is_reltime(ev)   (snd_seq_ev_timemode_type(ev) == SND_SEQ_TIME_MODE_REL)
#define snd_seq_ev_is_direct(ev)   ((ev)->queue == SND_SEQ_QUEUE_DIRECT)

Typedefs

typedef _snd_seq snd_seq_t
typedef enum _snd_seq_type snd_seq_type_t
typedef _snd_seq_system_info snd_seq_system_info_t
typedef _snd_seq_client_info snd_seq_client_info_t
typedef enum snd_seq_client_type snd_seq_client_type_t
typedef _snd_seq_client_pool snd_seq_client_pool_t
typedef _snd_seq_port_info snd_seq_port_info_t
typedef _snd_seq_port_subscribe snd_seq_port_subscribe_t
typedef _snd_seq_query_subscribe snd_seq_query_subscribe_t
typedef _snd_seq_queue_info snd_seq_queue_info_t
typedef _snd_seq_queue_status snd_seq_queue_status_t
typedef _snd_seq_queue_tempo snd_seq_queue_tempo_t
typedef _snd_seq_queue_timer snd_seq_queue_timer_t
typedef _snd_seq_remove_events snd_seq_remove_events_t

Enumerations

enum  _snd_seq_type { SND_SEQ_TYPE_HW, SND_SEQ_TYPE_SHM, SND_SEQ_TYPE_INET }
enum  snd_seq_client_type { SND_SEQ_USER_CLIENT = 1, SND_SEQ_KERNEL_CLIENT = 2 }
enum  snd_seq_query_subs_type_t { SND_SEQ_QUERY_SUBS_READ, SND_SEQ_QUERY_SUBS_WRITE }
enum  snd_seq_queue_timer_type_t { SND_SEQ_TIMER_ALSA = 0, SND_SEQ_TIMER_MIDI_CLOCK = 1, SND_SEQ_TIMER_MIDI_TICK = 2 }
enum  {
  SND_SEQ_EVFLG_RESULT, SND_SEQ_EVFLG_NOTE, SND_SEQ_EVFLG_CONTROL, SND_SEQ_EVFLG_QUEUE,
  SND_SEQ_EVFLG_SYSTEM, SND_SEQ_EVFLG_MESSAGE, SND_SEQ_EVFLG_CONNECTION, SND_SEQ_EVFLG_SAMPLE,
  SND_SEQ_EVFLG_USERS, SND_SEQ_EVFLG_INSTR, SND_SEQ_EVFLG_QUOTE, SND_SEQ_EVFLG_NONE,
  SND_SEQ_EVFLG_RAW, SND_SEQ_EVFLG_FIXED, SND_SEQ_EVFLG_VARIABLE, SND_SEQ_EVFLG_VARUSR
}
enum  { SND_SEQ_EVFLG_NOTE_ONEARG, SND_SEQ_EVFLG_NOTE_TWOARG }
enum  { SND_SEQ_EVFLG_QUEUE_NOARG, SND_SEQ_EVFLG_QUEUE_TICK, SND_SEQ_EVFLG_QUEUE_TIME, SND_SEQ_EVFLG_QUEUE_VALUE }

Functions

int snd_seq_open (snd_seq_t **handle, const char *name, int streams, int mode)
 Open the ALSA sequencer. More...

int snd_seq_open_lconf (snd_seq_t **handle, const char *name, int streams, int mode, snd_config_t *lconf)
 Open the ALSA sequencer using local configuration. More...

const char * snd_seq_name (snd_seq_t *seq)
 get identifier of sequencer handle. More...

snd_seq_type_t snd_seq_type (snd_seq_t *seq)
 get type of sequencer handle. More...

int snd_seq_close (snd_seq_t *handle)
 Close the sequencer. More...

int snd_seq_poll_descriptors_count (snd_seq_t *handle, short events)
 Returns the number of poll descriptors. More...

int snd_seq_poll_descriptors (snd_seq_t *handle, struct pollfd *pfds, unsigned int space, short events)
 Get poll descriptors. More...

int snd_seq_poll_descriptors_revents (snd_seq_t *seq, struct pollfd *pfds, unsigned int nfds, unsigned short *revents)
 get returned events from poll descriptors. More...

int snd_seq_nonblock (snd_seq_t *handle, int nonblock)
 Set nonblock mode. More...

int snd_seq_client_id (snd_seq_t *handle)
 Get the client id. More...

size_t snd_seq_get_output_buffer_size (snd_seq_t *handle)
 Return the size of output buffer. More...

size_t snd_seq_get_input_buffer_size (snd_seq_t *handle)
 Return the size of input buffer. More...

int snd_seq_set_output_buffer_size (snd_seq_t *handle, size_t size)
 Change the size of output buffer. More...

int snd_seq_set_input_buffer_size (snd_seq_t *handle, size_t size)
 Resize the input buffer. More...

size_t snd_seq_system_info_sizeof (void)
 Get size of snd_seq_system_info_t. More...

int snd_seq_system_info_malloc (snd_seq_system_info_t **ptr)
 Allocate an empty snd_seq_system_info_t using standard malloc. More...

void snd_seq_system_info_free (snd_seq_system_info_t *ptr)
 Frees a previously allocated snd_seq_system_info_t. More...

void snd_seq_system_info_copy (snd_seq_system_info_t *dst, const snd_seq_system_info_t *src)
 Copy one snd_seq_system_info_t to another. More...

int snd_seq_system_info_get_queues (const snd_seq_system_info_t *info)
 Get maximum number of queues. More...

int snd_seq_system_info_get_clients (const snd_seq_system_info_t *info)
 Get maximum number of clients. More...

int snd_seq_system_info_get_ports (const snd_seq_system_info_t *info)
 Get maximum number of ports. More...

int snd_seq_system_info_get_channels (const snd_seq_system_info_t *info)
 Get maximum number of channels. More...

int snd_seq_system_info_get_cur_clients (const snd_seq_system_info_t *info)
 Get the current number of clients. More...

int snd_seq_system_info_get_cur_queues (const snd_seq_system_info_t *info)
 Get the current number of queues. More...

int snd_seq_system_info (snd_seq_t *handle, snd_seq_system_info_t *info)
 obtain the sequencer system information. More...

size_t snd_seq_client_info_sizeof (void)
 get size of snd_seq_client_info_t. More...

int snd_seq_client_info_malloc (snd_seq_client_info_t **ptr)
 allocate an empty snd_seq_client_info_t using standard malloc. More...

void snd_seq_client_info_free (snd_seq_client_info_t *ptr)
 frees a previously allocated snd_seq_client_info_t. More...

void snd_seq_client_info_copy (snd_seq_client_info_t *dst, const snd_seq_client_info_t *src)
 copy one snd_seq_client_info_t to another. More...

int snd_seq_client_info_get_client (const snd_seq_client_info_t *info)
 Get client id of a client_info container. More...

snd_seq_client_type_t snd_seq_client_info_get_type (const snd_seq_client_info_t *info)
 Get client type of a client_info container. More...

const char * snd_seq_client_info_get_name (snd_seq_client_info_t *info)
 Get the name of a client_info container. More...

int snd_seq_client_info_get_broadcast_filter (const snd_seq_client_info_t *info)
 Get the broadcast filter usage of a client_info container. More...

int snd_seq_client_info_get_error_bounce (const snd_seq_client_info_t *info)
 Get the error-bounce usage of a client_info container. More...

const unsigned char * snd_seq_client_info_get_event_filter (const snd_seq_client_info_t *info)
 Get the event filter bitmap of a client_info container. More...

int snd_seq_client_info_get_num_ports (const snd_seq_client_info_t *info)
 Get the number of opened ports of a client_info container. More...

int snd_seq_client_info_get_event_lost (const snd_seq_client_info_t *info)
 Get the number of lost events of a client_info container. More...

void snd_seq_client_info_set_client (snd_seq_client_info_t *info, int client)
 Set the client id of a client_info container. More...

void snd_seq_client_info_set_name (snd_seq_client_info_t *info, const char *name)
 Set the name of a client_info container. More...

void snd_seq_client_info_set_broadcast_filter (snd_seq_client_info_t *info, int val)
 Set the broadcast filter usage of a client_info container. More...

void snd_seq_client_info_set_error_bounce (snd_seq_client_info_t *info, int val)
 Set the error-bounce usage of a client_info container. More...

void snd_seq_client_info_set_event_filter (snd_seq_client_info_t *info, unsigned char *filter)
 Set the event filter bitmap of a client_info container. More...

int snd_seq_get_client_info (snd_seq_t *handle, snd_seq_client_info_t *info)
 obtain the current client information. More...

int snd_seq_get_any_client_info (snd_seq_t *handle, int client, snd_seq_client_info_t *info)
 obtain the information of the given client. More...

int snd_seq_set_client_info (snd_seq_t *handle, snd_seq_client_info_t *info)
 set the current client information. More...

int snd_seq_query_next_client (snd_seq_t *handle, snd_seq_client_info_t *info)
 query the next matching client. More...

size_t snd_seq_client_pool_sizeof (void)
 get size of snd_seq_client_pool_t. More...

int snd_seq_client_pool_malloc (snd_seq_client_pool_t **ptr)
 allocate an empty snd_seq_client_pool_t using standard malloc. More...

void snd_seq_client_pool_free (snd_seq_client_pool_t *ptr)
 frees a previously allocated snd_seq_client_pool_t. More...

void snd_seq_client_pool_copy (snd_seq_client_pool_t *dst, const snd_seq_client_pool_t *src)
 copy one snd_seq_client_pool_t to another. More...

int snd_seq_client_pool_get_client (const snd_seq_client_pool_t *info)
 Get the client id of a queue_info container. More...

size_t snd_seq_client_pool_get_output_pool (const snd_seq_client_pool_t *info)
 Get the output pool size of a queue_info container. More...

size_t snd_seq_client_pool_get_input_pool (const snd_seq_client_pool_t *info)
 Get the input pool size of a queue_info container. More...

size_t snd_seq_client_pool_get_output_room (const snd_seq_client_pool_t *info)
 Get the output room size of a queue_info container. More...

size_t snd_seq_client_pool_get_output_free (const snd_seq_client_pool_t *info)
 Get the available size on output pool of a queue_info container. More...

size_t snd_seq_client_pool_get_input_free (const snd_seq_client_pool_t *info)
 Get the available size on input pool of a queue_info container. More...

void snd_seq_client_pool_set_output_pool (snd_seq_client_pool_t *info, size_t size)
 Set the output pool size of a queue_info container. More...

void snd_seq_client_pool_set_input_pool (snd_seq_client_pool_t *info, size_t size)
 Set the input pool size of a queue_info container. More...

void snd_seq_client_pool_set_output_room (snd_seq_client_pool_t *info, size_t size)
 Set the output room size of a queue_info container. More...

int snd_seq_get_client_pool (snd_seq_t *handle, snd_seq_client_pool_t *info)
 obtain the pool information of the current client. More...

int snd_seq_set_client_pool (snd_seq_t *handle, snd_seq_client_pool_t *info)
 set the pool information. More...

size_t snd_seq_port_info_sizeof (void)
 get size of snd_seq_port_info_t. More...

int snd_seq_port_info_malloc (snd_seq_port_info_t **ptr)
 allocate an empty snd_seq_port_info_t using standard malloc. More...

void snd_seq_port_info_free (snd_seq_port_info_t *ptr)
 frees a previously allocated snd_seq_port_info_t. More...

void snd_seq_port_info_copy (snd_seq_port_info_t *dst, const snd_seq_port_info_t *src)
 copy one snd_seq_port_info_t to another. More...

int snd_seq_port_info_get_client (const snd_seq_port_info_t *info)
 Get client id of a port_info container. More...

int snd_seq_port_info_get_port (const snd_seq_port_info_t *info)
 Get port id of a port_info container. More...

const snd_seq_addr_tsnd_seq_port_info_get_addr (const snd_seq_port_info_t *info)
 Get client/port address of a port_info container. More...

const char * snd_seq_port_info_get_name (const snd_seq_port_info_t *info)
 Get the name of a port_info container. More...

unsigned int snd_seq_port_info_get_capability (const snd_seq_port_info_t *info)
 Get the capability bits of a port_info container. More...

unsigned int snd_seq_port_info_get_type (const snd_seq_port_info_t *info)
 Get the type bits of a port_info container. More...

int snd_seq_port_info_get_midi_channels (const snd_seq_port_info_t *info)
 Get the midi channels of a port_info container. More...

int snd_seq_port_info_get_midi_voices (const snd_seq_port_info_t *info)
 Get the midi voices of a port_info container. More...

int snd_seq_port_info_get_synth_voices (const snd_seq_port_info_t *info)
 Get the synth voices of a port_info container. More...

int snd_seq_port_info_get_read_use (const snd_seq_port_info_t *info)
 Get the number of read subscriptions of a port_info container. More...

int snd_seq_port_info_get_write_use (const snd_seq_port_info_t *info)
 Get the number of write subscriptions of a port_info container. More...

int snd_seq_port_info_get_port_specified (const snd_seq_port_info_t *info)
 Get the port-specified mode of a port_info container. More...

void snd_seq_port_info_set_client (snd_seq_port_info_t *info, int client)
 Set the client id of a port_info container. More...

void snd_seq_port_info_set_port (snd_seq_port_info_t *info, int port)
 Set the port id of a port_info container. More...

void snd_seq_port_info_set_addr (snd_seq_port_info_t *info, const snd_seq_addr_t *addr)
 Set the client/port address of a port_info container. More...

void snd_seq_port_info_set_name (snd_seq_port_info_t *info, const char *name)
 Set the name of a port_info container. More...

void snd_seq_port_info_set_capability (snd_seq_port_info_t *info, unsigned int capability)
 set the capability bits of a port_info container. More...

void snd_seq_port_info_set_type (snd_seq_port_info_t *info, unsigned int type)
 Get the type bits of a port_info container. More...

void snd_seq_port_info_set_midi_channels (snd_seq_port_info_t *info, int channels)
 set the midi channels of a port_info container. More...

void snd_seq_port_info_set_midi_voices (snd_seq_port_info_t *info, int voices)
 set the midi voices of a port_info container. More...

void snd_seq_port_info_set_synth_voices (snd_seq_port_info_t *info, int voices)
 set the synth voices of a port_info container. More...

void snd_seq_port_info_set_port_specified (snd_seq_port_info_t *info, int val)
 Set the port-specified mode of a port_info container. More...

int snd_seq_create_port (snd_seq_t *handle, snd_seq_port_info_t *info)
 create a sequencer port on the current client. More...

int snd_seq_delete_port (snd_seq_t *handle, int port)
 delete a sequencer port on the current client. More...

int snd_seq_get_port_info (snd_seq_t *handle, int port, snd_seq_port_info_t *info)
 obtain the information of a port on the current client. More...

int snd_seq_get_any_port_info (snd_seq_t *handle, int client, int port, snd_seq_port_info_t *info)
 obtain the information of a port on an arbitrary client. More...

int snd_seq_set_port_info (snd_seq_t *handle, int port, snd_seq_port_info_t *info)
 set the information of a port on the current client. More...

int snd_seq_query_next_port (snd_seq_t *handle, snd_seq_port_info_t *info)
 query the next matching port. More...

size_t snd_seq_port_subscribe_sizeof (void)
 get size of snd_seq_port_subscribe_t. More...

int snd_seq_port_subscribe_malloc (snd_seq_port_subscribe_t **ptr)
 allocate an empty snd_seq_port_subscribe_t using standard malloc. More...

void snd_seq_port_subscribe_free (snd_seq_port_subscribe_t *ptr)
 frees a previously allocated snd_seq_port_subscribe_t. More...

void snd_seq_port_subscribe_copy (snd_seq_port_subscribe_t *dst, const snd_seq_port_subscribe_t *src)
 copy one snd_seq_port_subscribe_t to another. More...

const snd_seq_addr_tsnd_seq_port_subscribe_get_sender (const snd_seq_port_subscribe_t *info)
 Get sender address of a port_subscribe container. More...

const snd_seq_addr_tsnd_seq_port_subscribe_get_dest (const snd_seq_port_subscribe_t *info)
 Get destination address of a port_subscribe container. More...

int snd_seq_port_subscribe_get_queue (const snd_seq_port_subscribe_t *info)
 Get the queue id of a port_subscribe container. More...

int snd_seq_port_subscribe_get_exclusive (const snd_seq_port_subscribe_t *info)
 Get the exclusive mode of a port_subscribe container. More...

int snd_seq_port_subscribe_get_time_update (const snd_seq_port_subscribe_t *info)
 Get the time-update mode of a port_subscribe container. More...

int snd_seq_port_subscribe_get_time_real (const snd_seq_port_subscribe_t *info)
 Get the real-time update mode of a port_subscribe container. More...

void snd_seq_port_subscribe_set_sender (snd_seq_port_subscribe_t *info, const snd_seq_addr_t *addr)
 Set sender address of a port_subscribe container. More...

void snd_seq_port_subscribe_set_dest (snd_seq_port_subscribe_t *info, const snd_seq_addr_t *addr)
 Set destination address of a port_subscribe container. More...

void snd_seq_port_subscribe_set_queue (snd_seq_port_subscribe_t *info, int q)
 Set the queue id of a port_subscribe container. More...

void snd_seq_port_subscribe_set_voices (snd_seq_port_subscribe_t *info, unsigned int voices)
 Set the voices of a port_subscribe container. More...

void snd_seq_port_subscribe_set_exclusive (snd_seq_port_subscribe_t *info, int val)
 Set the exclusive mode of a port_subscribe container. More...

void snd_seq_port_subscribe_set_time_update (snd_seq_port_subscribe_t *info, int val)
 Set the time-update mode of a port_subscribe container. More...

void snd_seq_port_subscribe_set_time_real (snd_seq_port_subscribe_t *info, int val)
 Set the real-time mode of a port_subscribe container. More...

int snd_seq_get_port_subscription (snd_seq_t *handle, snd_seq_port_subscribe_t *sub)
 obtain subscription information. More...

int snd_seq_subscribe_port (snd_seq_t *handle, snd_seq_port_subscribe_t *sub)
 subscribe a port connection. More...

int snd_seq_unsubscribe_port (snd_seq_t *handle, snd_seq_port_subscribe_t *sub)
 unsubscribe a connection between ports. More...

size_t snd_seq_query_subscribe_sizeof (void)
 get size of snd_seq_query_subscribe_t. More...

int snd_seq_query_subscribe_malloc (snd_seq_query_subscribe_t **ptr)
 allocate an empty snd_seq_query_subscribe_t using standard malloc. More...

void snd_seq_query_subscribe_free (snd_seq_query_subscribe_t *ptr)
 frees a previously allocated snd_seq_query_subscribe_t. More...

void snd_seq_query_subscribe_copy (snd_seq_query_subscribe_t *dst, const snd_seq_query_subscribe_t *src)
 copy one snd_seq_query_subscribe_t to another. More...

int snd_seq_query_subscribe_get_client (const snd_seq_query_subscribe_t *info)
 Get the client id of a query_subscribe container. More...

int snd_seq_query_subscribe_get_port (const snd_seq_query_subscribe_t *info)
 Get the port id of a query_subscribe container. More...

const snd_seq_addr_tsnd_seq_query_subscribe_get_root (const snd_seq_query_subscribe_t *info)
 Get the client/port address of a query_subscribe container. More...

snd_seq_query_subs_type_t snd_seq_query_subscribe_get_type (const snd_seq_query_subscribe_t *info)
 Get the query type of a query_subscribe container. More...

int snd_seq_query_subscribe_get_index (const snd_seq_query_subscribe_t *info)
 Get the index of subscriber of a query_subscribe container. More...

int snd_seq_query_subscribe_get_num_subs (const snd_seq_query_subscribe_t *info)
 Get the number of subscriptions of a query_subscribe container. More...

const snd_seq_addr_tsnd_seq_query_subscribe_get_addr (const snd_seq_query_subscribe_t *info)
 Get the address of subscriber of a query_subscribe container. More...

int snd_seq_query_subscribe_get_queue (const snd_seq_query_subscribe_t *info)
 Get the queue id of subscriber of a query_subscribe container. More...

int snd_seq_query_subscribe_get_exclusive (const snd_seq_query_subscribe_t *info)
 Get the exclusive mode of a query_subscribe container. More...

int snd_seq_query_subscribe_get_time_update (const snd_seq_query_subscribe_t *info)
 Get the time-update mode of a query_subscribe container. More...

int snd_seq_query_subscribe_get_time_real (const snd_seq_query_subscribe_t *info)
 Get the real-time update mode of a query_subscribe container. More...

void snd_seq_query_subscribe_set_client (snd_seq_query_subscribe_t *info, int client)
 Set the client id of a query_subscribe container. More...

void snd_seq_query_subscribe_set_port (snd_seq_query_subscribe_t *info, int port)
 Set the port id of a query_subscribe container. More...

void snd_seq_query_subscribe_set_root (snd_seq_query_subscribe_t *info, const snd_seq_addr_t *addr)
 Set the client/port address of a query_subscribe container. More...

void snd_seq_query_subscribe_set_type (snd_seq_query_subscribe_t *info, snd_seq_query_subs_type_t type)
 Set the query type of a query_subscribe container. More...

void snd_seq_query_subscribe_set_index (snd_seq_query_subscribe_t *info, int index)
 Set the subscriber's index to be queried. More...

int snd_seq_query_port_subscribers (snd_seq_t *seq, snd_seq_query_subscribe_t *subs)
 query port subscriber list. More...

size_t snd_seq_queue_info_sizeof (void)
 get size of snd_seq_queue_info_t. More...

int snd_seq_queue_info_malloc (snd_seq_queue_info_t **ptr)
 allocate an empty snd_seq_queue_info_t using standard malloc. More...

void snd_seq_queue_info_free (snd_seq_queue_info_t *ptr)
 frees a previously allocated snd_seq_queue_info_t. More...

void snd_seq_queue_info_copy (snd_seq_queue_info_t *dst, const snd_seq_queue_info_t *src)
 copy one snd_seq_queue_info_t to another. More...

int snd_seq_queue_info_get_queue (const snd_seq_queue_info_t *info)
 Get the queue id of a queue_info container. More...

const char * snd_seq_queue_info_get_name (const snd_seq_queue_info_t *info)
 Get the name of a queue_info container. More...

int snd_seq_queue_info_get_owner (const snd_seq_queue_info_t *info)
 Get the owner client id of a queue_info container. More...

int snd_seq_queue_info_get_locked (const snd_seq_queue_info_t *info)
 Get the lock status of a queue_info container. More...

unsigned int snd_seq_queue_info_get_flags (const snd_seq_queue_info_t *info)
 Get the conditional bit flags of a queue_info container. More...

void snd_seq_queue_info_set_name (snd_seq_queue_info_t *info, const char *name)
 Set the name of a queue_info container. More...

void snd_seq_queue_info_set_owner (snd_seq_queue_info_t *info, int owner)
 Set the owner client id of a queue_info container. More...

void snd_seq_queue_info_set_locked (snd_seq_queue_info_t *info, int locked)
 Set the lock status of a queue_info container. More...

void snd_seq_queue_info_set_flags (snd_seq_queue_info_t *info, unsigned int flags)
 Set the conditional bit flags of a queue_info container. More...

int snd_seq_create_queue (snd_seq_t *seq, snd_seq_queue_info_t *info)
 create a queue. More...

int snd_seq_alloc_named_queue (snd_seq_t *seq, const char *name)
 allocate a queue with the specified name. More...

int snd_seq_alloc_queue (snd_seq_t *handle)
 allocate a queue. More...

int snd_seq_free_queue (snd_seq_t *handle, int q)
 delete the specified queue. More...

int snd_seq_get_queue_info (snd_seq_t *seq, int q, snd_seq_queue_info_t *info)
 obtain queue attributes. More...

int snd_seq_set_queue_info (snd_seq_t *seq, int q, snd_seq_queue_info_t *info)
 change the queue attributes. More...

int snd_seq_query_named_queue (snd_seq_t *seq, const char *name)
 query the matching queue with the specified name. More...

int snd_seq_get_queue_usage (snd_seq_t *handle, int q)
 Get the queue usage flag to the client. More...

int snd_seq_set_queue_usage (snd_seq_t *handle, int q, int used)
 Set the queue usage flag to the client. More...

size_t snd_seq_queue_status_sizeof (void)
 get size of snd_seq_queue_status_t. More...

int snd_seq_queue_status_malloc (snd_seq_queue_status_t **ptr)
 allocate an empty snd_seq_queue_status_t using standard malloc. More...

void snd_seq_queue_status_free (snd_seq_queue_status_t *ptr)
 frees a previously allocated snd_seq_queue_status_t. More...

void snd_seq_queue_status_copy (snd_seq_queue_status_t *dst, const snd_seq_queue_status_t *src)
 copy one snd_seq_queue_status_t to another. More...

int snd_seq_queue_status_get_queue (const snd_seq_queue_status_t *info)
 Get the queue id of a queue_status container. More...

int snd_seq_queue_status_get_events (const snd_seq_queue_status_t *info)
 Get the number of events of a queue_status container. More...

snd_seq_tick_time_t snd_seq_queue_status_get_tick_time (const snd_seq_queue_status_t *info)
 Get the tick time of a queue_status container. More...

const snd_seq_real_time_tsnd_seq_queue_status_get_real_time (const snd_seq_queue_status_t *info)
 Get the real time of a queue_status container. More...

unsigned int snd_seq_queue_status_get_status (const snd_seq_queue_status_t *info)
 Get the running status bits of a queue_status container. More...

int snd_seq_get_queue_status (snd_seq_t *handle, int q, snd_seq_queue_status_t *status)
 obtain the running state of the queue. More...

size_t snd_seq_queue_tempo_sizeof (void)
 get size of snd_seq_queue_tempo_t. More...

int snd_seq_queue_tempo_malloc (snd_seq_queue_tempo_t **ptr)
 allocate an empty snd_seq_queue_tempo_t using standard malloc. More...

void snd_seq_queue_tempo_free (snd_seq_queue_tempo_t *ptr)
 frees a previously allocated snd_seq_queue_tempo_t. More...

void snd_seq_queue_tempo_copy (snd_seq_queue_tempo_t *dst, const snd_seq_queue_tempo_t *src)
 copy one snd_seq_queue_tempo_t to another. More...

int snd_seq_queue_tempo_get_queue (const snd_seq_queue_tempo_t *info)
 Get the queue id of a queue_status container. More...

unsigned int snd_seq_queue_tempo_get_tempo (const snd_seq_queue_tempo_t *info)
 Get the tempo of a queue_status container. More...

int snd_seq_queue_tempo_get_ppq (const snd_seq_queue_tempo_t *info)
 Get the ppq of a queue_status container. More...

unsigned int snd_seq_queue_tempo_get_skew (const snd_seq_queue_tempo_t *info)
 Get the timer skew value of a queue_status container. More...

unsigned int snd_seq_queue_tempo_get_skew_base (const snd_seq_queue_tempo_t *info)
 Get the timer skew base value of a queue_status container. More...

void snd_seq_queue_tempo_set_tempo (snd_seq_queue_tempo_t *info, unsigned int tempo)
 Set the tempo of a queue_status container. More...

void snd_seq_queue_tempo_set_ppq (snd_seq_queue_tempo_t *info, int ppq)
 Set the ppq of a queue_status container. More...

void snd_seq_queue_tempo_set_skew (snd_seq_queue_tempo_t *info, unsigned int skew)
 Set the timer skew value of a queue_status container. More...

void snd_seq_queue_tempo_set_skew_base (snd_seq_queue_tempo_t *info, unsigned int base)
 Set the timer skew base value of a queue_status container. More...

int snd_seq_get_queue_tempo (snd_seq_t *handle, int q, snd_seq_queue_tempo_t *tempo)
 obtain the current tempo of the queue. More...

int snd_seq_set_queue_tempo (snd_seq_t *handle, int q, snd_seq_queue_tempo_t *tempo)
 set the tempo of the queue. More...

size_t snd_seq_queue_timer_sizeof (void)
 get size of snd_seq_queue_timer_t. More...

int snd_seq_queue_timer_malloc (snd_seq_queue_timer_t **ptr)
 allocate an empty snd_seq_queue_timer_t using standard malloc. More...

void snd_seq_queue_timer_free (snd_seq_queue_timer_t *ptr)
 frees a previously allocated snd_seq_queue_timer_t. More...

void snd_seq_queue_timer_copy (snd_seq_queue_timer_t *dst, const snd_seq_queue_timer_t *src)
 copy one snd_seq_queue_timer_t to another. More...

int snd_seq_queue_timer_get_queue (const snd_seq_queue_timer_t *info)
 Get the queue id of a queue_timer container. More...

snd_seq_queue_timer_type_t snd_seq_queue_timer_get_type (const snd_seq_queue_timer_t *info)
 Get the timer type of a queue_timer container. More...

const snd_timer_id_tsnd_seq_queue_timer_get_id (const snd_seq_queue_timer_t *info)
 Get the timer id of a queue_timer container. More...

unsigned int snd_seq_queue_timer_get_resolution (const snd_seq_queue_timer_t *info)
 Get the timer resolution of a queue_timer container. More...

void snd_seq_queue_timer_set_type (snd_seq_queue_timer_t *info, snd_seq_queue_timer_type_t type)
 Set the timer type of a queue_timer container. More...

void snd_seq_queue_timer_set_id (snd_seq_queue_timer_t *info, const snd_timer_id_t *id)
 Set the timer id of a queue_timer container. More...

void snd_seq_queue_timer_set_resolution (snd_seq_queue_timer_t *info, unsigned int resolution)
 Set the timer resolution of a queue_timer container. More...

int snd_seq_get_queue_timer (snd_seq_t *handle, int q, snd_seq_queue_timer_t *timer)
 obtain the queue timer information. More...

int snd_seq_set_queue_timer (snd_seq_t *handle, int q, snd_seq_queue_timer_t *timer)
 set the queue timer information. More...

int snd_seq_free_event (snd_seq_event_t *ev)
 (DEPRECATED) free an event. More...

ssize_t snd_seq_event_length (snd_seq_event_t *ev)
 calculates the (encoded) byte-stream size of the event. More...

int snd_seq_event_output (snd_seq_t *handle, snd_seq_event_t *ev)
 output an event. More...

int snd_seq_event_output_buffer (snd_seq_t *handle, snd_seq_event_t *ev)
 output an event onto the lib buffer without draining buffer. More...

int snd_seq_event_output_direct (snd_seq_t *handle, snd_seq_event_t *ev)
 output an event directly to the sequencer NOT through output buffer. More...

int snd_seq_event_input (snd_seq_t *handle, snd_seq_event_t **ev)
 retrieve an event from sequencer. More...

int snd_seq_event_input_pending (snd_seq_t *seq, int fetch_sequencer)
 check events in input buffer. More...

int snd_seq_drain_output (snd_seq_t *handle)
 drain output buffer to sequencer. More...

int snd_seq_event_output_pending (snd_seq_t *seq)
 return the size of pending events on output buffer. More...

int snd_seq_extract_output (snd_seq_t *handle, snd_seq_event_t **ev)
 extract the first event in output buffer. More...

int snd_seq_drop_output (snd_seq_t *handle)
 remove all events on output buffer. More...

int snd_seq_drop_output_buffer (snd_seq_t *handle)
 remove all events on user-space output buffer. More...

int snd_seq_drop_input (snd_seq_t *handle)
 clear input buffer and and remove events in sequencer queue. More...

int snd_seq_drop_input_buffer (snd_seq_t *handle)
 remove all events on user-space input FIFO. More...

size_t snd_seq_remove_events_sizeof (void)
 get size of snd_seq_remove_events_t. More...

int snd_seq_remove_events_malloc (snd_seq_remove_events_t **ptr)
 allocate an empty snd_seq_remove_events_t using standard malloc. More...

void snd_seq_remove_events_free (snd_seq_remove_events_t *ptr)
 frees a previously allocated snd_seq_remove_events_t. More...

void snd_seq_remove_events_copy (snd_seq_remove_events_t *dst, const snd_seq_remove_events_t *src)
 copy one snd_seq_remove_events_t to another. More...

unsigned int snd_seq_remove_events_get_condition (const snd_seq_remove_events_t *info)
 Get the removal condition bits. More...

int snd_seq_remove_events_get_queue (const snd_seq_remove_events_t *info)
 Get the queue as removal condition. More...

const snd_seq_timestamp_tsnd_seq_remove_events_get_time (const snd_seq_remove_events_t *info)
 Get the event timestamp as removal condition. More...

const snd_seq_addr_tsnd_seq_remove_events_get_dest (const snd_seq_remove_events_t *info)
 Get the event destination address as removal condition. More...

int snd_seq_remove_events_get_channel (const snd_seq_remove_events_t *info)
 Get the event channel as removal condition. More...

int snd_seq_remove_events_get_event_type (const snd_seq_remove_events_t *info)
 Get the event type as removal condition. More...

int snd_seq_remove_events_get_tag (const snd_seq_remove_events_t *info)
 Get the event tag id as removal condition. More...

void snd_seq_remove_events_set_condition (snd_seq_remove_events_t *info, unsigned int flags)
 Set the removal condition bits. More...

void snd_seq_remove_events_set_queue (snd_seq_remove_events_t *info, int queue)
 Set the queue as removal condition. More...

void snd_seq_remove_events_set_time (snd_seq_remove_events_t *info, const snd_seq_timestamp_t *time)
 Set the timestamp as removal condition. More...

void snd_seq_remove_events_set_dest (snd_seq_remove_events_t *info, const snd_seq_addr_t *addr)
 Set the destination address as removal condition. More...

void snd_seq_remove_events_set_channel (snd_seq_remove_events_t *info, int channel)
 Set the channel as removal condition. More...

void snd_seq_remove_events_set_event_type (snd_seq_remove_events_t *info, int type)
 Set the event type as removal condition. More...

void snd_seq_remove_events_set_tag (snd_seq_remove_events_t *info, int tag)
 Set the event tag as removal condition. More...

int snd_seq_remove_events (snd_seq_t *handle, snd_seq_remove_events_t *info)
 remove events on input/output buffers. More...

void snd_seq_set_bit (int nr, void *array)
 set a bit flag.

int snd_seq_change_bit (int nr, void *array)
 change a bit flag.

int snd_seq_get_bit (int nr, void *array)
 get a bit flag state.


Variables

const unsigned int snd_seq_event_types []


Detailed Description

Application interface library for the ALSA driver.

>

Author:
Jaroslav Kysela <perex@suse.cz> , Abramo Bagnara <abramo@alsa-project.org> , Takashi Iwai <tiwai@suse.de>
Date:
1998-2001

Generated on Thu Feb 27 11:30:37 2003 for ALSA project - the C library reference by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002