Separated asoundlib.h to small files.

This commit is contained in:
Jaroslav Kysela 2001-09-13 11:38:32 +00:00
parent 57b0601ef7
commit 58345ae4f4
22 changed files with 619 additions and 128 deletions

View file

@ -1,20 +1,14 @@
alsaincludedir = ${includedir}/alsa
alsainclude_HEADERS = asoundlib.h
sysincludedir = ${includedir}/sys sysincludedir = ${includedir}/sys
alsaincludedir = ${includedir}/alsa
# This is the order they will be concatenated into asoundlib.h! alsainclude_HEADERS = asoundlib.h \
# version.h global.h input.h output.h error.h \
header_files=header.h version.h global.h input.h output.h error.h \ conf.h pcm.h rawmidi.h timer.h \
conf.h pcm.h rawmidi.h timer.h \ hwdep.h control.h mixer.h \
hwdep.h control.h mixer.h \ seq_event.h seq.h seqmid.h seq_midi_event.h \
seq_event.h seq.h seqmid.h seq_midi_event.h \ conv.h instr.h
conv.h instr.h footer.h
noinst_HEADERS=$(header_files) search.h list.h aserver.h local.h noinst_HEADERS=search.h list.h aserver.h local.h config.h
asoundlib.h: $(header_files)
cat $^ > $@
version.h: stamp-vh version.h: stamp-vh
@: @:

View file

@ -1,5 +1,5 @@
/** /**
* \file asoundlib.h * \file <alsa/asoundlib.h>
* \brief Application interface library for the ALSA driver * \brief Application interface library for the ALSA driver
* \author Jaroslav Kysela <perex@suse.cz> * \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org> * \author Abramo Bagnara <abramo@alsa-project.org>
@ -28,9 +28,6 @@
#ifndef __ASOUNDLIB_H #ifndef __ASOUNDLIB_H
#define __ASOUNDLIB_H #define __ASOUNDLIB_H
#ifndef __ASOUNDEF_H
#include <alsa/asoundef.h>
#endif
#include <unistd.h> #include <unistd.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
@ -41,15 +38,24 @@
#include <sys/poll.h> #include <sys/poll.h>
#include <errno.h> #include <errno.h>
#ifndef ATTRIBUTE_UNUSED #include <alsa/asoundef.h>
#define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) /**< don't print warning when attribute is not used */ #include <alsa/version.h>
#endif #include <alsa/global.h>
#include <alsa/input.h>
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 95) #include <alsa/output.h>
#define SNDERR(...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, 0, __VA_ARGS__) /**< show sound error */ #include <alsa/error.h>
#define SYSERR(...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, errno, __VA_ARGS__) /**< show system error */ #include <alsa/conf.h>
#else #include <alsa/pcm.h>
#define SNDERR(args...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, 0, ##args) /**< show sound error */ #include <alsa/rawmidi.h>
#define SYSERR(args...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, errno, ##args) /**< show system error */ #include <alsa/timer.h>
#endif #include <alsa/hwdep.h>
#include <alsa/control.h>
#include <alsa/mixer.h>
#include <alsa/seq_event.h>
#include <alsa/seq.h>
#include <alsa/seqmid.h>
#include <alsa/seq_midi_event.h>
#include <alsa/conv.h>
#include <alsa/instr.h>
#endif /* __ASOUNDLIB_H */

View file

@ -1,3 +1,33 @@
/**
* \file <alsa/conf.h>
* \brief Application interface library for the ALSA driver
* \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_CONF_H
#define __ALSA_CONF_H
/** /**
* \defgroup Config Configuration Interface * \defgroup Config Configuration Interface
* Configuration Interface * Configuration Interface
@ -104,3 +134,5 @@ int snd_config_get_ctl_iface(snd_config_t *conf);
/** \} */ /** \} */
#endif /* __ALSA_CONF_H */

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/control.h>
* control.h * * \brief Application interface library for the ALSA driver
* Control Interface * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_CONTROL_H
#define __ALSA_CONTROL_H
/** /**
* \defgroup Control Control Interface * \defgroup Control Control Interface
@ -454,3 +477,5 @@ void snd_hctl_elem_set_callback_private(snd_hctl_elem_t *obj, void * val);
/** \} */ /** \} */
/** \} */ /** \} */
#endif /* __ALSA_CONTROL_H */

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <file/conv.h>
* conv.h * * \brief Application interface library for the ALSA driver
* Binary Value Conversion * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_CONV_H
#define __ALSA_CONV_H
/** /**
* \defgroup BConv Binary Value Conversion * \defgroup BConv Binary Value Conversion
@ -30,3 +53,5 @@
/** \} */ /** \} */
#endif /* __ALSA_CONV_H */

View file

@ -1,3 +1,33 @@
/**
* \file <alsa/error.h>
* \brief Application interface library for the ALSA driver
* \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_ERROR_H
#define __ALSA_ERROR_H
/** /**
* \defgroup Error Error handling * \defgroup Error Error handling
* Error handling * Error handling
@ -30,5 +60,15 @@ extern int snd_lib_error_set_handler(snd_lib_error_handler_t *handler);
} }
#endif #endif
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 95)
#define SNDERR(...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, 0, __VA_ARGS__) /**< show sound error */
#define SYSERR(...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, errno, __VA_ARGS__) /**< show system error */
#else
#define SNDERR(args...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, 0, ##args) /**< show sound error */
#define SYSERR(args...) snd_lib_error(__FILE__, __LINE__, __FUNCTION__, errno, ##args) /**< show system error */
#endif
/** \} */ /** \} */
#endif /* __ALSA_ERROR_H */

View file

@ -1,5 +0,0 @@
/*
*
*/
#endif /* __ASOUNDLIB_H */

View file

@ -1,9 +1,43 @@
/**
* \file <alsa/global.h>
* \brief Application interface library for the ALSA driver
* \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_GLOBAL_H_
#define __ALSA_GLOBAL_H_
/** /**
* \defgroup Global Global defines * \defgroup Global Global defines
* Global defines * Global defines
* \{ * \{
*/ */
#ifndef ATTRIBUTE_UNUSED
#define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) /**< don't print warning when attribute is not used */
#endif
/** helper macro for SND_DLSYM_BUILD_VERSION */ /** helper macro for SND_DLSYM_BUILD_VERSION */
#define __SND_DLSYM_VERSION(name, version) _ ## name ## version #define __SND_DLSYM_VERSION(name, version) _ ## name ## version
/** build version for versioned dynamic symbol */ /** build version for versioned dynamic symbol */
@ -27,3 +61,5 @@ void *snd_async_handler_get_callback_private(snd_async_handler_t *handler);
/** \} */ /** \} */
#endif /* __ALSA_GLOBAL_H */

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/hwdep.h>
* hwdep.h * * \brief Application interface library for the ALSA driver
* Hardware depedent interface * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_HWDEP_H
#define __ALSA_HWDEP_H
/** /**
* \defgroup HwDep Hardware Dependant Interface * \defgroup HwDep Hardware Dependant Interface
@ -84,3 +107,5 @@ void snd_hwdep_info_set_device(snd_hwdep_info_t *obj, unsigned int val);
/** \} */ /** \} */
#endif /* __ALSA_HWDEP_H */

View file

@ -1,3 +1,33 @@
/**
* \file <alsa/input.h>
* \brief Application interface library for the ALSA driver
* \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_INPUT_H
#define __ALSA_INPUT_H
/** /**
* \defgroup Input Input Interface * \defgroup Input Input Interface
* Input Interface * Input Interface
@ -34,3 +64,5 @@ int snd_input_ungetc(snd_input_t *input, int c);
/** \} */ /** \} */
#endif /* __ALSA_INPUT_H */

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <file/instr.h>
* instr.h * * \brief Application interface library for the ALSA driver
* Instrument Interface * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_INSTR_H
#define __ALSA_INSTR_H
/** /**
* \defgroup Instrument Instrument Interface * \defgroup Instrument Instrument Interface
@ -174,3 +197,5 @@ int snd_instr_iwffff_free(snd_instr_iwffff_t *iwffff);
/** \} */ /** \} */
#endif /* __ALSA_INSTR_H */

View file

@ -22,6 +22,16 @@
#ifndef __LOCAL_H #ifndef __LOCAL_H
#define __LOCAL_H #define __LOCAL_H
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <assert.h>
#include <endian.h>
#include <sys/poll.h>
#include <errno.h>
#include "config.h" #include "config.h"
#define _snd_config_iterator list_head #define _snd_config_iterator list_head
@ -76,7 +86,24 @@ typedef struct sndrv_seq_event snd_seq_event_t;
#include <sound/asound.h> #include <sound/asound.h>
#include <sound/asoundef.h> #include <sound/asoundef.h>
#include <sound/asequencer.h> #include <sound/asequencer.h>
#include "asoundlib.h" #include "version.h"
#include "global.h"
#include "input.h"
#include "output.h"
#include "error.h"
#include "conf.h"
#include "pcm.h"
#include "rawmidi.h"
#include "timer.h"
#include "hwdep.h"
#include "control.h"
#include "mixer.h"
#include "seq_event.h"
#include "seq.h"
#include "seqmid.h"
#include "seq_midi_event.h"
#include "conv.h"
#include "instr.h"
#include "list.h" #include "list.h"
#if __BYTE_ORDER == __LITTLE_ENDIAN #if __BYTE_ORDER == __LITTLE_ENDIAN

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/mixer.h>
* mixer.h * * \brief Application interface library for the ALSA driver
* Mixer Interface * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_MIXER_H
#define __ALSA_MIXER_H
/** /**
* \defgroup Mixer Mixer Interface * \defgroup Mixer Mixer Interface
@ -71,11 +94,19 @@ int snd_mixer_load(snd_mixer_t *mixer);
void snd_mixer_free(snd_mixer_t *mixer); void snd_mixer_free(snd_mixer_t *mixer);
int snd_mixer_wait(snd_mixer_t *mixer, int timeout); int snd_mixer_wait(snd_mixer_t *mixer, int timeout);
int snd_mixer_set_compare(snd_mixer_t *mixer, snd_mixer_compare_t msort); int snd_mixer_set_compare(snd_mixer_t *mixer, snd_mixer_compare_t msort);
void snd_mixer_set_callback(snd_mixer_t *obj, snd_mixer_callback_t val);
void * snd_mixer_get_callback_private(const snd_mixer_t *obj);
void snd_mixer_set_callback_private(snd_mixer_t *obj, void * val);
unsigned int snd_mixer_get_count(const snd_mixer_t *obj);
int snd_mixer_class_unregister(snd_mixer_class_t *clss);
snd_mixer_elem_t *snd_mixer_elem_next(snd_mixer_elem_t *elem); snd_mixer_elem_t *snd_mixer_elem_next(snd_mixer_elem_t *elem);
snd_mixer_elem_t *snd_mixer_elem_prev(snd_mixer_elem_t *elem); snd_mixer_elem_t *snd_mixer_elem_prev(snd_mixer_elem_t *elem);
void snd_mixer_elem_set_callback(snd_mixer_elem_t *obj, snd_mixer_elem_callback_t val);
void * snd_mixer_elem_get_callback_private(const snd_mixer_elem_t *obj);
void snd_mixer_elem_set_callback_private(snd_mixer_elem_t *obj, void * val);
snd_mixer_elem_type_t snd_mixer_elem_get_type(const snd_mixer_elem_t *obj);
int snd_mixer_class_unregister(snd_mixer_class_t *clss);
#ifdef __cplusplus #ifdef __cplusplus
} }
@ -177,31 +208,11 @@ size_t snd_mixer_selem_id_sizeof(void);
int snd_mixer_selem_id_malloc(snd_mixer_selem_id_t **ptr); int snd_mixer_selem_id_malloc(snd_mixer_selem_id_t **ptr);
void snd_mixer_selem_id_free(snd_mixer_selem_id_t *obj); void snd_mixer_selem_id_free(snd_mixer_selem_id_t *obj);
void snd_mixer_selem_id_copy(snd_mixer_selem_id_t *dst, const snd_mixer_selem_id_t *src); void snd_mixer_selem_id_copy(snd_mixer_selem_id_t *dst, const snd_mixer_selem_id_t *src);
const char *snd_mixer_selem_id_get_name(const snd_mixer_selem_id_t *obj); const char *snd_mixer_selem_id_get_name(const snd_mixer_selem_id_t *obj);
unsigned int snd_mixer_selem_id_get_index(const snd_mixer_selem_id_t *obj); unsigned int snd_mixer_selem_id_get_index(const snd_mixer_selem_id_t *obj);
void snd_mixer_selem_id_set_name(snd_mixer_selem_id_t *obj, const char *val); void snd_mixer_selem_id_set_name(snd_mixer_selem_id_t *obj, const char *val);
void snd_mixer_selem_id_set_index(snd_mixer_selem_id_t *obj, unsigned int val); void snd_mixer_selem_id_set_index(snd_mixer_selem_id_t *obj, unsigned int val);
void snd_mixer_set_callback(snd_mixer_t *obj, snd_mixer_callback_t val);
void * snd_mixer_get_callback_private(const snd_mixer_t *obj);
void snd_mixer_set_callback_private(snd_mixer_t *obj, void * val);
unsigned int snd_mixer_get_count(const snd_mixer_t *obj);
void snd_mixer_elem_set_callback(snd_mixer_elem_t *obj, snd_mixer_elem_callback_t val);
void * snd_mixer_elem_get_callback_private(const snd_mixer_elem_t *obj);
void snd_mixer_elem_set_callback_private(snd_mixer_elem_t *obj, void * val);
snd_mixer_elem_type_t snd_mixer_elem_get_type(const snd_mixer_elem_t *obj);
#ifdef __cplusplus #ifdef __cplusplus
} }
@ -210,3 +221,5 @@ snd_mixer_elem_type_t snd_mixer_elem_get_type(const snd_mixer_elem_t *obj);
/** \} */ /** \} */
/** \} */ /** \} */
#endif /* __ALSA_MIXER_H */

View file

@ -1,3 +1,33 @@
/**
* \file <alsa/output.h>
* \brief Application interface library for the ALSA driver
* \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_OUTPUT_H
#define __ALSA_OUTPUT_H
/** /**
* \defgroup Output Output Interface * \defgroup Output Output Interface
* Output Interface * Output Interface
@ -35,3 +65,5 @@ int snd_output_flush(snd_output_t *output);
/** \} */ /** \} */
#endif /* __ALSA_OUTPUT_H */

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/pcm.h>
* pcm.h * * \brief Application interface library for the ALSA driver
* Digital Audio Interface * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_PCM_H
#define __ALSA_PCM_H
/** /**
* \defgroup PCM PCM Interface * \defgroup PCM PCM Interface
@ -304,7 +327,7 @@ typedef struct _snd_pcm_channel_area {
unsigned int step; unsigned int step;
} snd_pcm_channel_area_t; } snd_pcm_channel_area_t;
/* PCM synchronization ID */ /** PCM synchronization ID */
typedef union _snd_pcm_sync_id { typedef union _snd_pcm_sync_id {
/** 8-bit ID */ /** 8-bit ID */
unsigned char id[16]; unsigned char id[16];
@ -784,3 +807,5 @@ int snd_pcm_hook_remove(snd_pcm_hook_t *hook);
/** \} */ /** \} */
#endif /* __ALSA_PCM_H */

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/rawmidi.h>
* rawmidi.h * * \brief Application interface library for the ALSA driver
* RawMIDI interface * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_RAWMIDI_H
#define __ALSA_RAWMIDI_H
/** /**
* \defgroup RawMidi RawMidi Interface * \defgroup RawMidi RawMidi Interface
@ -127,3 +150,5 @@ snd_rawmidi_stream_t snd_rawmidi_stream(snd_rawmidi_t *rawmidi);
/** \} */ /** \} */
#endif /* __RAWMIDI_H */

View file

@ -1,6 +1,32 @@
#ifdef __cplusplus /**
extern "C" { * \file <alsa/seq.h>
#endif * \brief Application interface library for the ALSA driver
* \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_SEQ_H
#define __ALSA_SEQ_H
/** /**
* \defgroup SeqGlobal Sequencer System * \defgroup SeqGlobal Sequencer System
@ -9,6 +35,10 @@ extern "C" {
* \{ * \{
*/ */
#ifdef __cplusplus
extern "C" {
#endif
/** dlsym version for interface entry callback */ /** dlsym version for interface entry callback */
#define SND_SEQ_DLSYM_VERSION _dlsym_seq_001 #define SND_SEQ_DLSYM_VERSION _dlsym_seq_001
@ -677,3 +707,6 @@ extern const unsigned int snd_seq_event_types[];
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* __ALSA_SEQ_H */

View file

@ -1,10 +1,32 @@
/** /**
* \defgroup Sequencer Sequencer Interface * \file <alsa/seq_event.h>
* Sequencer Interface * \brief Application interface library for the ALSA driver
* \{ * \author Jaroslav Kysela <perex@suse.cz>
* \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/ */
/** \} */ #ifndef __ALSA_SEQ_EVENT_H
#define __ALSA_SEQ_EVENT_H
/** /**
* \defgroup SeqEvents Sequencer Event Definitions * \defgroup SeqEvents Sequencer Event Definitions
@ -427,3 +449,6 @@ typedef struct snd_seq_event {
/** \} */ /** \} */
#endif /* __ALSA_SEQ_EVENT_H */

View file

@ -1,8 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/seq_midi_event.h>
* Sequencer event <-> MIDI byte stream coder * * \brief Application interface library for the ALSA driver
* * * \author Jaroslav Kysela <perex@suse.cz>
****************************************************************************/ * \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_SEQ_MIDI_EVENT_H
#define __ALSA_SEQ_MIDI_EVENT_H
/** /**
* \defgroup MIDI_Event Sequencer event <-> MIDI byte stream coder * \defgroup MIDI_Event Sequencer event <-> MIDI byte stream coder
@ -36,3 +60,5 @@ long snd_midi_event_decode(snd_midi_event_t *dev, unsigned char *buf, long count
/** \} */ /** \} */
#endif /* __ALSA_SEQ_MIDI_EVENT_H */

View file

@ -1,12 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/seqmid.h>
* Sequencer Middle Level * * \brief Application interface library for the ALSA driver
* * * \author Jaroslav Kysela <perex@suse.cz>
****************************************************************************/ * \author Abramo Bagnara <abramo@alsa-project.org>
* \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifdef __cplusplus #ifndef __ALSA_SEQMID_H
extern "C" { #define __ALSA_SEQMID_H
#endif
/** /**
* \defgroup SeqMiddle Sequencer Middle Level Interface * \defgroup SeqMiddle Sequencer Middle Level Interface
@ -15,6 +35,10 @@ extern "C" {
* \{ * \{
*/ */
#ifdef __cplusplus
extern "C" {
#endif
/** /**
* \brief initialize event record * \brief initialize event record
* \param ev event record pointer * \param ev event record pointer
@ -403,9 +427,11 @@ int snd_seq_reset_pool_input(snd_seq_t *seq);
((ev)->type = SND_SEQ_EVENT_SYSEX,\ ((ev)->type = SND_SEQ_EVENT_SYSEX,\
snd_seq_ev_set_variable(ev, datalen, dataptr)) snd_seq_ev_set_variable(ev, datalen, dataptr))
/** \} */
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** \} */
#endif /* __ALSA_SEQMID_H */

View file

@ -1,9 +1,32 @@
/**************************************************************************** /**
* * * \file <alsa/timer.h>
* timer.h * * \brief Application interface library for the ALSA driver
* Timer interface * * \author Jaroslav Kysela <perex@suse.cz>
* * * \author Abramo Bagnara <abramo@alsa-project.org>
****************************************************************************/ * \author Takashi Iwai <tiwai@suse.de>
* \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 Library General Public License as
* published by the Free Software Foundation; either version 2 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 Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
#ifndef __ALSA_TIMER_H
#define __ALSA_TIMER_H
/** /**
* \defgroup Timer Timer Interface * \defgroup Timer Timer Interface
@ -157,3 +180,5 @@ long snd_timer_status_get_queue(snd_timer_status_t * status);
/** \} */ /** \} */
#endif /** __ALSA_TIMER_H */

View file

@ -25,7 +25,6 @@
#include <string.h> #include <string.h>
#include <ctype.h> #include <ctype.h>
#include "local.h" #include "local.h"
#include "asoundlib.h"
/** /**
* \brief Get the boolean value from given ASCII string * \brief Get the boolean value from given ASCII string