|
PulseAudio
9.0
|
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, see <http://www.gnu.org/licenses/>. 00021 ***/ 00022 00023 #include <pulse/cdecl.h> 00024 #include <pulse/context.h> 00025 #include <pulse/version.h> 00026 #include <pulse/volume.h> 00027 #include <pulse/channelmap.h> 00028 00034 PA_C_DECL_BEGIN 00035 00038 typedef struct pa_ext_stream_restore_info { 00039 const char *name; 00040 pa_channel_map channel_map; 00041 pa_cvolume volume; 00042 const char *device; 00043 int mute; 00044 } pa_ext_stream_restore_info; 00045 00047 typedef void (*pa_ext_stream_restore_test_cb_t)( 00048 pa_context *c, 00049 uint32_t version, 00050 void *userdata); 00051 00053 pa_operation *pa_ext_stream_restore_test( 00054 pa_context *c, 00055 pa_ext_stream_restore_test_cb_t cb, 00056 void *userdata); 00057 00059 typedef void (*pa_ext_stream_restore_read_cb_t)( 00060 pa_context *c, 00061 const pa_ext_stream_restore_info *info, 00062 int eol, 00063 void *userdata); 00064 00066 pa_operation *pa_ext_stream_restore_read( 00067 pa_context *c, 00068 pa_ext_stream_restore_read_cb_t cb, 00069 void *userdata); 00070 00072 pa_operation *pa_ext_stream_restore_write( 00073 pa_context *c, 00074 pa_update_mode_t mode, 00075 const pa_ext_stream_restore_info data[], 00076 unsigned n, 00077 int apply_immediately, 00078 pa_context_success_cb_t cb, 00079 void *userdata); 00080 00082 pa_operation *pa_ext_stream_restore_delete( 00083 pa_context *c, 00084 const char *const s[], 00085 pa_context_success_cb_t cb, 00086 void *userdata); 00087 00089 pa_operation *pa_ext_stream_restore_subscribe( 00090 pa_context *c, 00091 int enable, 00092 pa_context_success_cb_t cb, 00093 void *userdata); 00094 00096 typedef void (*pa_ext_stream_restore_subscribe_cb_t)( 00097 pa_context *c, 00098 void *userdata); 00099 00102 void pa_ext_stream_restore_set_subscribe_cb( 00103 pa_context *c, 00104 pa_ext_stream_restore_subscribe_cb_t cb, 00105 void *userdata); 00106 00107 PA_C_DECL_END 00108 00109 #endif