Sequencer Port Interface
[MIDI Sequencer]

Defines

#define SND_SEQ_PORT_SYSTEM_TIMER   0
#define SND_SEQ_PORT_SYSTEM_ANNOUNCE   1
#define SND_SEQ_PORT_CAP_READ   (1<<0)
#define SND_SEQ_PORT_CAP_WRITE   (1<<1)
#define SND_SEQ_PORT_CAP_SYNC_READ   (1<<2)
#define SND_SEQ_PORT_CAP_SYNC_WRITE   (1<<3)
#define SND_SEQ_PORT_CAP_DUPLEX   (1<<4)
#define SND_SEQ_PORT_CAP_SUBS_READ   (1<<5)
#define SND_SEQ_PORT_CAP_SUBS_WRITE   (1<<6)
#define SND_SEQ_PORT_CAP_NO_EXPORT   (1<<7)
#define SND_SEQ_PORT_TYPE_SPECIFIC   (1<<0)
#define SND_SEQ_PORT_TYPE_MIDI_GENERIC   (1<<1)
#define SND_SEQ_PORT_TYPE_MIDI_GM   (1<<2)
#define SND_SEQ_PORT_TYPE_MIDI_GS   (1<<3)
#define SND_SEQ_PORT_TYPE_MIDI_XG   (1<<4)
#define SND_SEQ_PORT_TYPE_MIDI_MT32   (1<<5)
#define SND_SEQ_PORT_TYPE_MIDI_GM2   (1<<6)
#define SND_SEQ_PORT_TYPE_SYNTH   (1<<10)
#define SND_SEQ_PORT_TYPE_DIRECT_SAMPLE   (1<<11)
#define SND_SEQ_PORT_TYPE_SAMPLE   (1<<12)
#define SND_SEQ_PORT_TYPE_HARDWARE   (1<<16)
#define SND_SEQ_PORT_TYPE_SOFTWARE   (1<<17)
#define SND_SEQ_PORT_TYPE_SYNTHESIZER   (1<<18)
#define SND_SEQ_PORT_TYPE_PORT   (1<<19)
#define SND_SEQ_PORT_TYPE_APPLICATION   (1<<20)
#define snd_seq_port_info_alloca(ptr)   __snd_alloca(ptr, snd_seq_port_info)

Typedefs

typedef struct _snd_seq_port_info snd_seq_port_info_t

Functions

size_t snd_seq_port_info_sizeof (void)
int snd_seq_port_info_malloc (snd_seq_port_info_t **ptr)
void snd_seq_port_info_free (snd_seq_port_info_t *ptr)
void snd_seq_port_info_copy (snd_seq_port_info_t *dst, const snd_seq_port_info_t *src)
int snd_seq_port_info_get_client (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_port (const snd_seq_port_info_t *info)
const snd_seq_addr_tsnd_seq_port_info_get_addr (const snd_seq_port_info_t *info)
const char * snd_seq_port_info_get_name (const snd_seq_port_info_t *info)
unsigned int snd_seq_port_info_get_capability (const snd_seq_port_info_t *info)
unsigned int snd_seq_port_info_get_type (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_midi_channels (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_midi_voices (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_synth_voices (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_read_use (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_write_use (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_port_specified (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_timestamping (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_timestamp_real (const snd_seq_port_info_t *info)
int snd_seq_port_info_get_timestamp_queue (const snd_seq_port_info_t *info)
void snd_seq_port_info_set_client (snd_seq_port_info_t *info, int client)
void snd_seq_port_info_set_port (snd_seq_port_info_t *info, int port)
void snd_seq_port_info_set_addr (snd_seq_port_info_t *info, const snd_seq_addr_t *addr)
void snd_seq_port_info_set_name (snd_seq_port_info_t *info, const char *name)
void snd_seq_port_info_set_capability (snd_seq_port_info_t *info, unsigned int capability)
void snd_seq_port_info_set_type (snd_seq_port_info_t *info, unsigned int type)
void snd_seq_port_info_set_midi_channels (snd_seq_port_info_t *info, int channels)
void snd_seq_port_info_set_midi_voices (snd_seq_port_info_t *info, int voices)
void snd_seq_port_info_set_synth_voices (snd_seq_port_info_t *info, int voices)
void snd_seq_port_info_set_port_specified (snd_seq_port_info_t *info, int val)
void snd_seq_port_info_set_timestamping (snd_seq_port_info_t *info, int enable)
void snd_seq_port_info_set_timestamp_real (snd_seq_port_info_t *info, int realtime)
void snd_seq_port_info_set_timestamp_queue (snd_seq_port_info_t *info, int queue)
int snd_seq_create_port (snd_seq_t *handle, snd_seq_port_info_t *info)
int snd_seq_delete_port (snd_seq_t *handle, int port)
int snd_seq_get_port_info (snd_seq_t *handle, int port, snd_seq_port_info_t *info)
int snd_seq_get_any_port_info (snd_seq_t *handle, int client, int port, snd_seq_port_info_t *info)
int snd_seq_set_port_info (snd_seq_t *handle, int port, snd_seq_port_info_t *info)
int snd_seq_query_next_port (snd_seq_t *handle, snd_seq_port_info_t *info)

Detailed Description

Sequencer Port Interface


Define Documentation

#define SND_SEQ_PORT_CAP_DUPLEX   (1<<4)

allow read/write duplex

#define SND_SEQ_PORT_CAP_NO_EXPORT   (1<<7)

routing not allowed

#define SND_SEQ_PORT_CAP_READ   (1<<0)

port capabilities (32 bits) readable from this port

#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_SYNC_READ   (1<<2)

allow read subscriptions

#define SND_SEQ_PORT_CAP_SYNC_WRITE   (1<<3)

allow write subscriptions

#define SND_SEQ_PORT_CAP_WRITE   (1<<1)

writable to this port

#define snd_seq_port_info_alloca ( ptr   )     __snd_alloca(ptr, snd_seq_port_info)

allocate a snd_seq_port_info_t container on stack

#define SND_SEQ_PORT_SYSTEM_ANNOUNCE   1

system announce port

#define SND_SEQ_PORT_SYSTEM_TIMER   0

known port numbers system timer port

#define SND_SEQ_PORT_TYPE_APPLICATION   (1<<20)

This port belongs to an application, such as a sequencer or editor.

#define SND_SEQ_PORT_TYPE_DIRECT_SAMPLE   (1<<11)

Instruments can be downloaded to this port (with SND_SEQ_EVENT_INSTR_xxx messages sent directly).

#define SND_SEQ_PORT_TYPE_HARDWARE   (1<<16)

This port is implemented in hardware.

#define SND_SEQ_PORT_TYPE_MIDI_GENERIC   (1<<1)

This port understands MIDI messages.

#define SND_SEQ_PORT_TYPE_MIDI_GM   (1<<2)

This port is compatible with the General MIDI specification.

#define SND_SEQ_PORT_TYPE_MIDI_GM2   (1<<6)

This port is compatible with the General MIDI 2 specification.

#define SND_SEQ_PORT_TYPE_MIDI_GS   (1<<3)

This port is compatible with the Roland GS standard.

#define SND_SEQ_PORT_TYPE_MIDI_MT32   (1<<5)

This port is compatible with the Roland MT-32.

#define SND_SEQ_PORT_TYPE_MIDI_XG   (1<<4)

This port is compatible with the Yamaha XG specification.

#define SND_SEQ_PORT_TYPE_PORT   (1<<19)

This port may connect to other devices (whose characteristics are not known).

#define SND_SEQ_PORT_TYPE_SAMPLE   (1<<12)

Instruments can be downloaded to this port (with SND_SEQ_EVENT_INSTR_xxx messages sent directly or through a queue).

#define SND_SEQ_PORT_TYPE_SOFTWARE   (1<<17)

This port is implemented in software.

#define SND_SEQ_PORT_TYPE_SPECIFIC   (1<<0)

Messages sent from/to this port have device-specific semantics.

#define SND_SEQ_PORT_TYPE_SYNTH   (1<<10)

This port understands SND_SEQ_EVENT_SAMPLE_xxx messages (these are not MIDI messages).

#define SND_SEQ_PORT_TYPE_SYNTHESIZER   (1<<18)

Messages sent to this port will generate sounds.


Typedef Documentation

typedef struct _snd_seq_port_info snd_seq_port_info_t

port information container

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines
Generated on Fri Jan 27 14:19:57 2012 for ALSA project - the C library reference by  doxygen 1.6.3