PulseAudio 1.1
|
00001 #ifndef foopulseextstreamrestorehfoo 00002 #define foopulseextstreamrestorehfoo 00003 00004 /*** 00005 This file is part of PulseAudio. 00006 00007 Copyright 2008 Lennart Poettering 00008 00009 PulseAudio is free software; you can redistribute it and/or modify 00010 it under the terms of the GNU Lesser General Public License as published 00011 by the Free Software Foundation; either version 2.1 of the License, 00012 or (at your option) any later version. 00013 00014 PulseAudio is distributed in the hope that it will be useful, but 00015 WITHOUT ANY WARRANTY; without even the implied warranty of 00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00017 General Public License for more details. 00018 00019 You should have received a copy of the GNU Lesser General Public License 00020 along with PulseAudio; if not, write to the Free Software 00021 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 00022 USA. 00023 ***/ 00024 00025 #include <pulse/cdecl.h> 00026 #include <pulse/context.h> 00027 #include <pulse/version.h> 00028 #include <pulse/volume.h> 00029 #include <pulse/channelmap.h> 00030 00036 PA_C_DECL_BEGIN 00037 00040 typedef struct pa_ext_stream_restore_info { 00041 const char *name; 00042 pa_channel_map channel_map; 00043 pa_cvolume volume; 00044 const char *device; 00045 int mute; 00046 } pa_ext_stream_restore_info; 00047 00049 typedef void (*pa_ext_stream_restore_test_cb_t)( 00050 pa_context *c, 00051 uint32_t version, 00052 void *userdata); 00053 00055 pa_operation *pa_ext_stream_restore_test( 00056 pa_context *c, 00057 pa_ext_stream_restore_test_cb_t cb, 00058 void *userdata); 00059 00061 typedef void (*pa_ext_stream_restore_read_cb_t)( 00062 pa_context *c, 00063 const pa_ext_stream_restore_info *info, 00064 int eol, 00065 void *userdata); 00066 00068 pa_operation *pa_ext_stream_restore_read( 00069 pa_context *c, 00070 pa_ext_stream_restore_read_cb_t cb, 00071 void *userdata); 00072 00074 pa_operation *pa_ext_stream_restore_write( 00075 pa_context *c, 00076 pa_update_mode_t mode, 00077 const pa_ext_stream_restore_info data[], 00078 unsigned n, 00079 int apply_immediately, 00080 pa_context_success_cb_t cb, 00081 void *userdata); 00082 00084 pa_operation *pa_ext_stream_restore_delete( 00085 pa_context *c, 00086 const char *const s[], 00087 pa_context_success_cb_t cb, 00088 void *userdata); 00089 00091 pa_operation *pa_ext_stream_restore_subscribe( 00092 pa_context *c, 00093 int enable, 00094 pa_context_success_cb_t cb, 00095 void *userdata); 00096 00098 typedef void (*pa_ext_stream_restore_subscribe_cb_t)( 00099 pa_context *c, 00100 void *userdata); 00101 00104 void pa_ext_stream_restore_set_subscribe_cb( 00105 pa_context *c, 00106 pa_ext_stream_restore_subscribe_cb_t cb, 00107 void *userdata); 00108 00109 PA_C_DECL_END 00110 00111 #endif