PulseAudio  9.0
simple.h
Go to the documentation of this file.
00001 #ifndef foosimplehfoo
00002 #define foosimplehfoo
00003 
00004 /***
00005   This file is part of PulseAudio.
00006 
00007   Copyright 2004-2006 Lennart Poettering
00008   Copyright 2006 Pierre Ossman <ossman@cendio.se> for Cendio AB
00009 
00010   PulseAudio is free software; you can redistribute it and/or modify
00011   it under the terms of the GNU Lesser General Public License as published
00012   by the Free Software Foundation; either version 2.1 of the License,
00013   or (at your option) any later version.
00014 
00015   PulseAudio is distributed in the hope that it will be useful, but
00016   WITHOUT ANY WARRANTY; without even the implied warranty of
00017   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00018   General Public License for more details.
00019 
00020   You should have received a copy of the GNU Lesser General Public License
00021   along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
00022 ***/
00023 
00024 #include <sys/types.h>
00025 
00026 #include <pulse/sample.h>
00027 #include <pulse/channelmap.h>
00028 #include <pulse/def.h>
00029 #include <pulse/cdecl.h>
00030 #include <pulse/version.h>
00031 
00111 PA_C_DECL_BEGIN
00112 
00115 typedef struct pa_simple pa_simple;
00116 
00118 pa_simple* pa_simple_new(
00119     const char *server,                 
00120     const char *name,                   
00121     pa_stream_direction_t dir,          
00122     const char *dev,                    
00123     const char *stream_name,            
00124     const pa_sample_spec *ss,           
00125     const pa_channel_map *map,          
00126     const pa_buffer_attr *attr,         
00127     int *error                          
00128     );
00129 
00131 void pa_simple_free(pa_simple *s);
00132 
00134 int pa_simple_write(pa_simple *s, const void *data, size_t bytes, int *error);
00135 
00137 int pa_simple_drain(pa_simple *s, int *error);
00138 
00142 int pa_simple_read(
00143     pa_simple *s, 
00144     void *data,   
00145     size_t bytes, 
00146     int *error
00149     );
00150 
00152 pa_usec_t pa_simple_get_latency(pa_simple *s, int *error);
00153 
00155 int pa_simple_flush(pa_simple *s, int *error);
00156 
00157 PA_C_DECL_END
00158 
00159 #endif