/** * \file include/seq_event.h * \brief Application interface library for the ALSA driver * \author Jaroslav Kysela <[email protected]> * \author Abramo Bagnara <[email protected]> * \author Takashi Iwai <[email protected]> * \date 1998-2001 * * Application interface library for the ALSA driver */ /* * This library is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as * published by the Free Software Foundation; either version 2.1 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * */ #ifndef __ALSA_SEQ_EVENT_H #define __ALSA_SEQ_EVENT_H /** * \defgroup SeqEvents Sequencer Event Definitions * Sequencer Event Definitions * \ingroup Sequencer * \{ */ /** * Sequencer event data type */ snd_seq_event_type_t; /** Sequencer event type */ enum snd_seq_event_type { … }; /** Sequencer event address */ snd_seq_addr_t; /** Connection (subscription) between ports */ snd_seq_connect_t; /** Real-time data record */ snd_seq_real_time_t; /** (MIDI) Tick-time data record */ snd_seq_tick_time_t; /** unioned time stamp */ snd_seq_timestamp_t; /** * Event mode flags * * NOTE: only 8 bits available! */ #define SND_SEQ_TIME_STAMP_TICK … #define SND_SEQ_TIME_STAMP_REAL … #define SND_SEQ_TIME_STAMP_MASK … #define SND_SEQ_TIME_MODE_ABS … #define SND_SEQ_TIME_MODE_REL … #define SND_SEQ_TIME_MODE_MASK … #define SND_SEQ_EVENT_LENGTH_FIXED … #define SND_SEQ_EVENT_LENGTH_VARIABLE … #define SND_SEQ_EVENT_LENGTH_VARUSR … #define SND_SEQ_EVENT_LENGTH_MASK … #define SND_SEQ_PRIORITY_NORMAL … #define SND_SEQ_PRIORITY_HIGH … #define SND_SEQ_PRIORITY_MASK … /** Note event */ snd_seq_ev_note_t; /** Controller event */ snd_seq_ev_ctrl_t; /** generic set of bytes (12x8 bit) */ snd_seq_ev_raw8_t; /** generic set of integers (3x32 bit) */ snd_seq_ev_raw32_t; /** external stored data */ struct snd_seq_ev_ext { … } __attribute__((packed)); /** external stored data */ snd_seq_ev_ext_t; #ifdef DOC_HIDDEN /* redefine typedef for stupid doxygen */ typedef snd_seq_ev_ext snd_seq_ev_ext_t; #endif /** Result events */ snd_seq_result_t; /** Queue skew values */ snd_seq_queue_skew_t; /** queue timer control */ snd_seq_ev_queue_control_t; /** Sequencer event */ snd_seq_event_t; /** \} */ #endif /* __ALSA_SEQ_EVENT_H */