ALSA project - the C library reference
seq_event.h
Go to the documentation of this file.
1 
11 /*
12  * This library is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU Lesser General Public License as
14  * published by the Free Software Foundation; either version 2.1 of
15  * the License, or (at your option) any later version.
16  *
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  * GNU Lesser General Public License for more details.
21  *
22  * You should have received a copy of the GNU Lesser General Public
23  * License along with this library; if not, write to the Free Software
24  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
25  *
26  */
27 
28 #if !defined(__ASOUNDLIB_H) && !defined(ALSA_LIBRARY_BUILD)
29 /* don't use ALSA_LIBRARY_BUILD define in sources outside alsa-lib */
30 #warning "use #include <alsa/asoundlib.h>, <alsa/seq_event.h> should not be used directly"
31 #include <alsa/asoundlib.h>
32 #endif
33 
34 #ifndef __ALSA_SEQ_EVENT_H
35 #define __ALSA_SEQ_EVENT_H
36 
47 typedef unsigned char snd_seq_event_type_t;
48 
55 
64 
79 
90 
111 
118 
123 
136 
141 
146 
167 
182 
185 };
186 
187 
189 typedef struct snd_seq_addr {
190  unsigned char client;
191  unsigned char port;
193 
195 typedef struct snd_seq_connect {
199 
200 
202 typedef struct snd_seq_real_time {
203  unsigned int tv_sec;
204  unsigned int tv_nsec;
206 
208 typedef unsigned int snd_seq_tick_time_t;
209 
211 typedef union snd_seq_timestamp {
213  struct snd_seq_real_time time;
215 
216 
222 #define SND_SEQ_TIME_STAMP_TICK (0<<0)
223 #define SND_SEQ_TIME_STAMP_REAL (1<<0)
224 #define SND_SEQ_TIME_STAMP_MASK (1<<0)
226 #define SND_SEQ_TIME_MODE_ABS (0<<1)
227 #define SND_SEQ_TIME_MODE_REL (1<<1)
228 #define SND_SEQ_TIME_MODE_MASK (1<<1)
230 #define SND_SEQ_EVENT_LENGTH_FIXED (0<<2)
231 #define SND_SEQ_EVENT_LENGTH_VARIABLE (1<<2)
232 #define SND_SEQ_EVENT_LENGTH_VARUSR (2<<2)
233 #define SND_SEQ_EVENT_LENGTH_MASK (3<<2)
235 #define SND_SEQ_PRIORITY_NORMAL (0<<4)
236 #define SND_SEQ_PRIORITY_HIGH (1<<4)
237 #define SND_SEQ_PRIORITY_MASK (1<<4)
239 #define SND_SEQ_EVENT_UMP (1<<5)
242 typedef struct snd_seq_ev_note {
243  unsigned char channel;
244  unsigned char note;
245  unsigned char velocity;
246  unsigned char off_velocity;
247  unsigned int duration;
249 
251 typedef struct snd_seq_ev_ctrl {
252  unsigned char channel;
253  unsigned char unused[3];
254  unsigned int param;
255  signed int value;
257 
259 typedef struct snd_seq_ev_raw8 {
260  unsigned char d[12];
262 
264 typedef struct snd_seq_ev_raw32 {
265  unsigned int d[3];
267 
270  unsigned int len;
271  void *ptr;
272 } __attribute__((packed));
274 typedef struct snd_seq_ev_ext snd_seq_ev_ext_t;
275 #ifdef DOC_HIDDEN
276 /* redefine typedef for stupid doxygen */
278 #endif
279 
281 typedef struct snd_seq_result {
282  int event;
283  int result;
285 
287 typedef struct snd_seq_queue_skew {
288  unsigned int value;
289  unsigned int base;
291 
293 typedef struct snd_seq_ev_queue_control {
294  unsigned char queue;
295  unsigned char unused[3];
296  union {
297  signed int value;
299  unsigned int position;
301  unsigned int d32[2];
302  unsigned char d8[8];
303  } param;
305 
307 typedef struct snd_seq_ev_ump_notify {
308  unsigned char client;
309  unsigned char block;
311 
313 typedef union snd_seq_event_data {
326 
328 typedef struct snd_seq_event {
330  unsigned char flags;
331  unsigned char tag;
333  unsigned char queue;
341 
343 typedef struct snd_seq_ump_event {
345  unsigned char flags;
346  unsigned char tag;
347  unsigned char queue;
352  union {
354  unsigned int ump[4];
355  };
357 
360 #endif /* __ALSA_SEQ_EVENT_H */
361 
void * ptr
Definition: seq_event.h:271
snd_seq_connect_t connect
Definition: seq_event.h:322
Definition: seq_event.h:117
unsigned int param
Definition: seq_event.h:254
Definition: seq_event.h:202
Definition: seq_event.h:129
snd_seq_tick_time_t tick
Definition: seq_event.h:212
unsigned char note
Definition: seq_event.h:244
Definition: seq_event.h:158
snd_seq_ev_ctrl_t control
Definition: seq_event.h:315
Definition: seq_event.h:125
snd_seq_ev_note_t note
Definition: seq_event.h:314
Definition: seq_event.h:66
unsigned char tag
Definition: seq_event.h:331
snd_seq_event_data_t data
Definition: seq_event.h:339
unsigned char channel
Definition: seq_event.h:252
snd_seq_event_data_t data
Definition: seq_event.h:353
Definition: seq_event.h:195
unsigned int tv_nsec
Definition: seq_event.h:204
snd_seq_event_type_t type
Definition: seq_event.h:329
unsigned int snd_seq_tick_time_t
Definition: seq_event.h:208
Definition: seq_event.h:169
Definition: seq_event.h:72
Definition: seq_event.h:156
Definition: seq_event.h:133
snd_seq_queue_skew_t skew
Definition: seq_event.h:300
Definition: seq_event.h:343
Definition: seq_event.h:145
Definition: seq_event.h:115
snd_seq_addr_t source
Definition: seq_event.h:349
Definition: seq_event.h:127
Definition: seq_event.h:59
Definition: seq_event.h:76
Definition: seq_event.h:94
unsigned char queue
Definition: seq_event.h:294
Definition: seq_event.h:52
Definition: seq_event.h:160
snd_seq_ev_ump_notify_t ump_notify
Definition: seq_event.h:324
unsigned char client
Definition: seq_event.h:308
unsigned char client
Definition: seq_event.h:190
Definition: seq_event.h:54
unsigned int tv_sec
Definition: seq_event.h:203
Definition: seq_event.h:143
Definition: seq_event.h:110
Definition: seq_event.h:166
Definition: seq_event.h:100
snd_seq_ev_raw32_t raw32
Definition: seq_event.h:317
Definition: seq_event.h:173
Definition: seq_event.h:122
snd_seq_result_t result
Definition: seq_event.h:323
snd_seq_timestamp_t time
Definition: seq_event.h:334
Definition: seq_event.h:150
snd_seq_timestamp_t time
Definition: seq_event.h:348
int result
Definition: seq_event.h:283
Definition: seq_event.h:181
unsigned char queue
Definition: seq_event.h:347
Definition: seq_event.h:177
snd_seq_timestamp_t time
Definition: seq_event.h:320
Definition: seq_event.h:57
Definition: seq_event.h:83
Definition: seq_event.h:78
unsigned char velocity
Definition: seq_event.h:245
unsigned int position
Definition: seq_event.h:299
int event
Definition: seq_event.h:282
snd_seq_addr_t addr
Definition: seq_event.h:321
unsigned char queue
Definition: seq_event.h:333
Definition: seq_event.h:251
snd_seq_addr_t dest
Definition: seq_event.h:337
Definition: seq_event.h:179
Definition: seq_event.h:162
snd_seq_ev_queue_control_t queue
Definition: seq_event.h:319
Definition: seq_event.h:189
snd_seq_ev_ext snd_seq_ev_ext_t
Definition: seq_event.h:277
Definition: seq_event.h:102
unsigned char channel
Definition: seq_event.h:243
Definition: seq_event.h:74
snd_seq_addr_t dest
Definition: seq_event.h:197
Definition: seq_event.h:211
Definition: seq_event.h:264
signed int value
Definition: seq_event.h:297
signed int value
Definition: seq_event.h:255
Definition: seq_event.h:113
Definition: seq_event.h:106
unsigned char flags
Definition: seq_event.h:330
Definition: seq_event.h:96
unsigned char block
Definition: seq_event.h:309
Definition: seq_event.h:259
Definition: seq_event.h:154
snd_seq_ev_ext_t ext
Definition: seq_event.h:318
unsigned int duration
Definition: seq_event.h:247
Definition: seq_event.h:61
unsigned int value
Definition: seq_event.h:288
snd_seq_ev_raw8_t raw8
Definition: seq_event.h:316
Definition: seq_event.h:148
Definition: seq_event.h:85
Definition: seq_event.h:108
Definition: seq_event.h:184
Definition: seq_event.h:81
unsigned char flags
Definition: seq_event.h:345
Definition: seq_event.h:328
Definition: seq_event.h:89
Definition: seq_event.h:104
unsigned int base
Definition: seq_event.h:289
unsigned char tag
Definition: seq_event.h:346
Definition: seq_event.h:120
Definition: seq_event.h:269
Definition: seq_event.h:135
uint16_t time
Definition: ump_msg.h:187
Definition: seq_event.h:152
Definition: seq_event.h:171
unsigned int len
Definition: seq_event.h:270
snd_seq_timestamp_t time
Definition: seq_event.h:298
Definition: seq_event.h:138
snd_seq_addr_t sender
Definition: seq_event.h:196
unsigned char off_velocity
Definition: seq_event.h:246
Definition: seq_event.h:281
Definition: seq_event.h:287
snd_seq_event_type
Definition: seq_event.h:50
unsigned char port
Definition: seq_event.h:191
Definition: seq_event.h:307
Definition: seq_event.h:87
snd_seq_event_type_t type
Definition: seq_event.h:344
Definition: seq_event.h:164
Definition: seq_event.h:140
Definition: seq_event.h:63
unsigned char snd_seq_event_type_t
Definition: seq_event.h:47
Definition: seq_event.h:92
Definition: seq_event.h:293
Definition: seq_event.h:68
Definition: seq_event.h:313
Definition: seq_event.h:98
Definition: seq_event.h:175
Definition: seq_event.h:242
Definition: seq_event.h:131
Definition: seq_event.h:70
snd_seq_addr_t dest
Definition: seq_event.h:350
snd_seq_addr_t source
Definition: seq_event.h:336