Sequencer Event Definitions
[MIDI Sequencer]


Data Structures

struct  snd_seq_addr
struct  snd_seq_connect
struct  snd_seq_real_time
union  snd_seq_timestamp
struct  snd_seq_ev_note
struct  snd_seq_ev_ctrl
struct  snd_seq_ev_raw8
struct  snd_seq_ev_raw32
struct  snd_seq_ev_ext
struct  snd_seq_result
struct  snd_seq_queue_skew
struct  snd_seq_ev_queue_control
struct  snd_seq_event

Defines

#define SND_SEQ_TIME_STAMP_TICK   (0<<0)
#define SND_SEQ_TIME_STAMP_REAL   (1<<0)
#define SND_SEQ_TIME_STAMP_MASK   (1<<0)
#define SND_SEQ_TIME_MODE_ABS   (0<<1)
#define SND_SEQ_TIME_MODE_REL   (1<<1)
#define SND_SEQ_TIME_MODE_MASK   (1<<1)
#define SND_SEQ_EVENT_LENGTH_FIXED   (0<<2)
#define SND_SEQ_EVENT_LENGTH_VARIABLE   (1<<2)
#define SND_SEQ_EVENT_LENGTH_VARUSR   (2<<2)
#define SND_SEQ_EVENT_LENGTH_MASK   (3<<2)
#define SND_SEQ_PRIORITY_NORMAL   (0<<4)
#define SND_SEQ_PRIORITY_HIGH   (1<<4)
#define SND_SEQ_PRIORITY_MASK   (1<<4)

Typedefs

typedef unsigned char snd_seq_event_type_t
typedef snd_seq_addr snd_seq_addr_t
typedef snd_seq_connect snd_seq_connect_t
typedef snd_seq_real_time snd_seq_real_time_t
typedef unsigned int snd_seq_tick_time_t
typedef snd_seq_timestamp snd_seq_timestamp_t
typedef snd_seq_ev_note snd_seq_ev_note_t
typedef snd_seq_ev_ctrl snd_seq_ev_ctrl_t
typedef snd_seq_ev_raw8 snd_seq_ev_raw8_t
typedef snd_seq_ev_raw32 snd_seq_ev_raw32_t
typedef snd_seq_ev_ext snd_seq_ev_ext_t
typedef snd_seq_result snd_seq_result_t
typedef snd_seq_queue_skew snd_seq_queue_skew_t
typedef snd_seq_ev_queue_control snd_seq_ev_queue_control_t
typedef snd_seq_event snd_seq_event_t

Enumerations

enum  snd_seq_event_type {
  SND_SEQ_EVENT_SYSTEM = 0, SND_SEQ_EVENT_RESULT, SND_SEQ_EVENT_NOTE = 5, SND_SEQ_EVENT_NOTEON,
  SND_SEQ_EVENT_NOTEOFF, SND_SEQ_EVENT_KEYPRESS, SND_SEQ_EVENT_CONTROLLER = 10, SND_SEQ_EVENT_PGMCHANGE,
  SND_SEQ_EVENT_CHANPRESS, SND_SEQ_EVENT_PITCHBEND, SND_SEQ_EVENT_CONTROL14, SND_SEQ_EVENT_NONREGPARAM,
  SND_SEQ_EVENT_REGPARAM, SND_SEQ_EVENT_SONGPOS = 20, SND_SEQ_EVENT_SONGSEL, SND_SEQ_EVENT_QFRAME,
  SND_SEQ_EVENT_TIMESIGN, SND_SEQ_EVENT_KEYSIGN, SND_SEQ_EVENT_START = 30, SND_SEQ_EVENT_CONTINUE,
  SND_SEQ_EVENT_STOP, SND_SEQ_EVENT_SETPOS_TICK, SND_SEQ_EVENT_SETPOS_TIME, SND_SEQ_EVENT_TEMPO,
  SND_SEQ_EVENT_CLOCK, SND_SEQ_EVENT_TICK, SND_SEQ_EVENT_QUEUE_SKEW, SND_SEQ_EVENT_SYNC_POS,
  SND_SEQ_EVENT_TUNE_REQUEST = 40, SND_SEQ_EVENT_RESET, SND_SEQ_EVENT_SENSING, SND_SEQ_EVENT_ECHO = 50,
  SND_SEQ_EVENT_OSS, SND_SEQ_EVENT_CLIENT_START = 60, SND_SEQ_EVENT_CLIENT_EXIT, SND_SEQ_EVENT_CLIENT_CHANGE,
  SND_SEQ_EVENT_PORT_START, SND_SEQ_EVENT_PORT_EXIT, SND_SEQ_EVENT_PORT_CHANGE, SND_SEQ_EVENT_PORT_SUBSCRIBED,
  SND_SEQ_EVENT_PORT_UNSUBSCRIBED, SND_SEQ_EVENT_USR0 = 90, SND_SEQ_EVENT_USR1, SND_SEQ_EVENT_USR2,
  SND_SEQ_EVENT_USR3, SND_SEQ_EVENT_USR4, SND_SEQ_EVENT_USR5, SND_SEQ_EVENT_USR6,
  SND_SEQ_EVENT_USR7, SND_SEQ_EVENT_USR8, SND_SEQ_EVENT_USR9, SND_SEQ_EVENT_SYSEX = 130,
  SND_SEQ_EVENT_BOUNCE, SND_SEQ_EVENT_USR_VAR0 = 135, SND_SEQ_EVENT_USR_VAR1, SND_SEQ_EVENT_USR_VAR2,
  SND_SEQ_EVENT_USR_VAR3, SND_SEQ_EVENT_USR_VAR4, SND_SEQ_EVENT_NONE = 255
}

Detailed Description

Sequencer Event Definitions

Define Documentation

#define SND_SEQ_EVENT_LENGTH_FIXED   (0<<2)

fixed event size

#define SND_SEQ_EVENT_LENGTH_MASK   (3<<2)

mask for event length bits

#define SND_SEQ_EVENT_LENGTH_VARIABLE   (1<<2)

variable event size

#define SND_SEQ_EVENT_LENGTH_VARUSR   (2<<2)

variable event size - user memory space

#define SND_SEQ_PRIORITY_HIGH   (1<<4)

event should be processed before others

#define SND_SEQ_PRIORITY_MASK   (1<<4)

mask for priority bits

#define SND_SEQ_PRIORITY_NORMAL   (0<<4)

normal priority

#define SND_SEQ_TIME_MODE_ABS   (0<<1)

absolute timestamp

#define SND_SEQ_TIME_MODE_MASK   (1<<1)

mask for time mode bits

#define SND_SEQ_TIME_MODE_REL   (1<<1)

relative to current time

#define SND_SEQ_TIME_STAMP_MASK   (1<<0)

mask for timestamp bits

#define SND_SEQ_TIME_STAMP_REAL   (1<<0)

timestamp in real time

#define SND_SEQ_TIME_STAMP_TICK   (0<<0)

Event mode flags

NOTE: only 8 bits available! timestamp in clock ticks


Typedef Documentation

typedef struct snd_seq_addr snd_seq_addr_t

Sequencer event address

typedef struct snd_seq_connect snd_seq_connect_t

Connection (subscription) between ports

typedef struct snd_seq_ev_ctrl snd_seq_ev_ctrl_t

Controller event

typedef struct snd_seq_ev_ext snd_seq_ev_ext_t

external stored data

typedef struct snd_seq_ev_note snd_seq_ev_note_t

Note event

typedef struct snd_seq_ev_queue_control snd_seq_ev_queue_control_t

queue timer control

typedef struct snd_seq_ev_raw32 snd_seq_ev_raw32_t

generic set of integers (3x32 bit)

typedef struct snd_seq_ev_raw8 snd_seq_ev_raw8_t

generic set of bytes (12x8 bit)

typedef struct snd_seq_event snd_seq_event_t

Sequencer event

typedef unsigned char snd_seq_event_type_t

Sequencer event data type

typedef struct snd_seq_queue_skew snd_seq_queue_skew_t

Queue skew values

typedef struct snd_seq_real_time snd_seq_real_time_t

Real-time data record

typedef struct snd_seq_result snd_seq_result_t

Result events

typedef unsigned int snd_seq_tick_time_t

(MIDI) Tick-time data record

typedef union snd_seq_timestamp snd_seq_timestamp_t

unioned time stamp


Enumeration Type Documentation

enum snd_seq_event_type

Sequencer event type

Enumerator:
SND_SEQ_EVENT_SYSTEM  system status; event data type = snd_seq_result_t
SND_SEQ_EVENT_RESULT  returned result status; event data type = snd_seq_result_t
SND_SEQ_EVENT_NOTE  note on and off with duration; event data type = snd_seq_ev_note_t
SND_SEQ_EVENT_NOTEON  note on; event data type = snd_seq_ev_note_t
SND_SEQ_EVENT_NOTEOFF  note off; event data type = snd_seq_ev_note_t
SND_SEQ_EVENT_KEYPRESS  key pressure change (aftertouch); event data type = snd_seq_ev_note_t
SND_SEQ_EVENT_CONTROLLER  controller; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_PGMCHANGE  program change; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_CHANPRESS  channel pressure; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_PITCHBEND  pitchwheel; event data type = snd_seq_ev_ctrl_t; data is from -8192 to 8191)
SND_SEQ_EVENT_CONTROL14  14 bit controller value; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_NONREGPARAM  14 bit NRPN; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_REGPARAM  14 bit RPN; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_SONGPOS  SPP with LSB and MSB values; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_SONGSEL  Song Select with song ID number; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_QFRAME  midi time code quarter frame; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_TIMESIGN  SMF Time Signature event; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_KEYSIGN  SMF Key Signature event; event data type = snd_seq_ev_ctrl_t
SND_SEQ_EVENT_START  MIDI Real Time Start message; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_CONTINUE  MIDI Real Time Continue message; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_STOP  MIDI Real Time Stop message; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_SETPOS_TICK  Set tick queue position; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_SETPOS_TIME  Set real-time queue position; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_TEMPO  (SMF) Tempo event; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_CLOCK  MIDI Real Time Clock message; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_TICK  MIDI Real Time Tick message; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_QUEUE_SKEW  Queue timer skew; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_SYNC_POS  Sync position changed; event data type = snd_seq_ev_queue_control_t
SND_SEQ_EVENT_TUNE_REQUEST  Tune request; event data type = none
SND_SEQ_EVENT_RESET  Reset to power-on state; event data type = none
SND_SEQ_EVENT_SENSING  Active sensing event; event data type = none
SND_SEQ_EVENT_ECHO  Echo-back event; event data type = any type
SND_SEQ_EVENT_OSS  OSS emulation raw event; event data type = any type
SND_SEQ_EVENT_CLIENT_START  New client has connected; event data type = snd_seq_addr_t
SND_SEQ_EVENT_CLIENT_EXIT  Client has left the system; event data type = snd_seq_addr_t
SND_SEQ_EVENT_CLIENT_CHANGE  Client status/info has changed; event data type = snd_seq_addr_t
SND_SEQ_EVENT_PORT_START  New port was created; event data type = snd_seq_addr_t
SND_SEQ_EVENT_PORT_EXIT  Port was deleted from system; event data type = snd_seq_addr_t
SND_SEQ_EVENT_PORT_CHANGE  Port status/info has changed; event data type = snd_seq_addr_t
SND_SEQ_EVENT_PORT_SUBSCRIBED  Ports connected; event data type = snd_seq_connect_t
SND_SEQ_EVENT_PORT_UNSUBSCRIBED  Ports disconnected; event data type = snd_seq_connect_t
SND_SEQ_EVENT_USR0  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR1  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR2  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR3  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR4  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR5  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR6  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR7  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR8  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_USR9  user-defined event; event data type = any (fixed size)
SND_SEQ_EVENT_SYSEX  system exclusive data (variable length); event data type = snd_seq_ev_ext_t
SND_SEQ_EVENT_BOUNCE  error event; event data type = snd_seq_ev_ext_t
SND_SEQ_EVENT_USR_VAR0  reserved for user apps; event data type = snd_seq_ev_ext_t
SND_SEQ_EVENT_USR_VAR1  reserved for user apps; event data type = snd_seq_ev_ext_t
SND_SEQ_EVENT_USR_VAR2  reserved for user apps; event data type = snd_seq_ev_ext_t
SND_SEQ_EVENT_USR_VAR3  reserved for user apps; event data type = snd_seq_ev_ext_t
SND_SEQ_EVENT_USR_VAR4  reserved for user apps; event data type = snd_seq_ev_ext_t
SND_SEQ_EVENT_NONE  NOP; ignored in any case


Generated on Wed Jan 21 18:55:16 2009 for ALSA project - the C library reference by  doxygen 1.4.7