|
PulseAudio
9.0
|
00001 #ifndef foopulseextdevicerestorehfoo 00002 #define foopulseextdevicerestorehfoo 00003 00004 /*** 00005 This file is part of PulseAudio. 00006 00007 Copyright 2008 Lennart Poettering 00008 Copyright 2011 Colin Guthrie 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 <pulse/context.h> 00025 #include <pulse/format.h> 00026 #include <pulse/version.h> 00027 00033 PA_C_DECL_BEGIN 00034 00037 typedef struct pa_ext_device_restore_info { 00038 pa_device_type_t type; 00039 uint32_t index; 00040 uint8_t n_formats; 00041 pa_format_info **formats; 00042 } pa_ext_device_restore_info; 00043 00045 typedef void (*pa_ext_device_restore_test_cb_t)( 00046 pa_context *c, 00047 uint32_t version, 00048 void *userdata); 00049 00051 pa_operation *pa_ext_device_restore_test( 00052 pa_context *c, 00053 pa_ext_device_restore_test_cb_t cb, 00054 void *userdata); 00055 00057 pa_operation *pa_ext_device_restore_subscribe( 00058 pa_context *c, 00059 int enable, 00060 pa_context_success_cb_t cb, 00061 void *userdata); 00062 00064 typedef void (*pa_ext_device_restore_subscribe_cb_t)( 00065 pa_context *c, 00066 pa_device_type_t type, 00067 uint32_t idx, 00068 void *userdata); 00069 00072 void pa_ext_device_restore_set_subscribe_cb( 00073 pa_context *c, 00074 pa_ext_device_restore_subscribe_cb_t cb, 00075 void *userdata); 00076 00078 typedef void (*pa_ext_device_restore_read_device_formats_cb_t)( 00079 pa_context *c, 00080 const pa_ext_device_restore_info *info, 00081 int eol, 00082 void *userdata); 00083 00085 pa_operation *pa_ext_device_restore_read_formats_all( 00086 pa_context *c, 00087 pa_ext_device_restore_read_device_formats_cb_t cb, 00088 void *userdata); 00089 00091 pa_operation *pa_ext_device_restore_read_formats( 00092 pa_context *c, 00093 pa_device_type_t type, 00094 uint32_t idx, 00095 pa_ext_device_restore_read_device_formats_cb_t cb, 00096 void *userdata); 00097 00099 pa_operation *pa_ext_device_restore_save_formats( 00100 pa_context *c, 00101 pa_device_type_t type, 00102 uint32_t idx, 00103 uint8_t n_formats, 00104 pa_format_info **formats, 00105 pa_context_success_cb_t cb, 00106 void *userdata); 00107 00108 PA_C_DECL_END 00109 00110 #endif