~diwic/ubuntu/lucid/pulseaudio/bugfixes

« back to all changes in this revision

Viewing changes to src/pulse/context.h

  • Committer: Bazaar Package Importer
  • Author(s): Luke Yelavich
  • Date: 2008-11-04 15:46:00 UTC
  • mfrom: (1.2.1 upstream) (1.1.6 lenny)
  • Revision ID: james.westby@ubuntu.com-20081104154600-hlzknpcazaam0nxm
Tags: 0.9.13-1ubuntu1
* Merge from Debian unstable, remaining changes:
  - Don't build against, and create jack package. Jack is not in main.
  - Remove --disable-per-user-esound-socket from configure flags, as we still
    want per user esound sockets.
  - Remove stop links from rc0 and rc6.
  - Change default resample algorithm and bubffer size.
  - Add alsa configuration files to route alsa applications via pulseaudio.
  - Move libasound2-plugins from Recommends to Depends.
* debian/pulseaudio.preinst: When upgrading from intrepid, remove
  /etc/X11/Xsession.d/70pulseaudio, as this was used to minimize a race
  condition when starting GNOME in intrepid. This race should not exist in
  jaunty once libcanberra is built to use pulseaudio as a backend.
* Do not spawn a pulseaudio server if clients fail to find a running server.
* Remove explicit version dependency for libspeex-dev to allow the package
  to be built for now.
* Regenerate autotools files to work with Ubuntu's newer libtool/libltdl.
* debian/control: libpulsecore5 -> libpulsecore8 to match the library
  soname.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#ifndef foocontexthfoo
2
2
#define foocontexthfoo
3
3
 
4
 
/* $Id: context.h 1426 2007-02-13 15:35:19Z ossman $ */
5
 
 
6
4
/***
7
5
  This file is part of PulseAudio.
8
6
 
30
28
#include <pulse/mainloop-api.h>
31
29
#include <pulse/cdecl.h>
32
30
#include <pulse/operation.h>
 
31
#include <pulse/proplist.h>
33
32
 
34
33
/** \page async Asynchronous API
35
34
 *
36
35
 * \section overv_sec Overview
37
36
 *
38
37
 * The asynchronous API is the native interface to the PulseAudio library.
39
 
 * It allows full access to all available functions. This also means that
 
38
 * It allows full access to all available functionality. This however means that
40
39
 * it is rather complex and can take some time to fully master.
41
40
 *
42
41
 * \section mainloop_sec Main Loop Abstraction
65
64
 *                                  implementation where all of PulseAudio's
66
65
 *                                  internal handling runs in a separate
67
66
 *                                  thread.
68
 
 * \li \subpage glib-mainloop - A wrapper around GLIB's main loop. Available
69
 
 *                              for both GLIB 1.2 and GLIB 2.x.
 
67
 * \li \subpage glib-mainloop - A wrapper around GLib's main loop.
70
68
 *
71
69
 * UNIX signals may be hooked to a main loop using the functions from
72
70
 * \ref mainloop-signal.h. These rely only on the main loop abstraction
166
164
typedef void (*pa_context_success_cb_t) (pa_context *c, int success, void *userdata);
167
165
 
168
166
/** Instantiate a new connection context with an abstract mainloop API
169
 
 * and an application name */
 
167
 * and an application name. It is recommended to use pa_context_new_with_proplist()
 
168
 * instead and specify some initial properties.*/
170
169
pa_context *pa_context_new(pa_mainloop_api *mainloop, const char *name);
171
170
 
 
171
/** Instantiate a new connection context with an abstract mainloop API
 
172
 * and an application name, and specify the the initial client property
 
173
 * list. \since 0.9.11 */
 
174
pa_context *pa_context_new_with_proplist(pa_mainloop_api *mainloop, const char *name, pa_proplist *proplist);
 
175
 
172
176
/** Decrease the reference counter of the context by one */
173
177
void pa_context_unref(pa_context *c);
174
178
 
207
211
 * returning a success notification */
208
212
pa_operation* pa_context_exit_daemon(pa_context *c, pa_context_success_cb_t cb, void *userdata);
209
213
 
210
 
/** Set the name of the default sink. \since 0.4 */
 
214
/** Set the name of the default sink. */
211
215
pa_operation* pa_context_set_default_sink(pa_context *c, const char *name, pa_context_success_cb_t cb, void *userdata);
212
216
 
213
 
/** Set the name of the default source. \since 0.4 */
 
217
/** Set the name of the default source. */
214
218
pa_operation* pa_context_set_default_source(pa_context *c, const char *name, pa_context_success_cb_t cb, void *userdata);
215
219
 
216
 
/** Returns 1 when the connection is to a local daemon. Returns negative when no connection has been made yet. \since 0.5 */
 
220
/** Returns 1 when the connection is to a local daemon. Returns negative when no connection has been made yet. */
217
221
int pa_context_is_local(pa_context *c);
218
222
 
219
 
/** Set a different application name for context on the server. \since 0.5 */
 
223
/** Set a different application name for context on the server. */
220
224
pa_operation* pa_context_set_name(pa_context *c, const char *name, pa_context_success_cb_t cb, void *userdata);
221
225
 
222
 
/** Return the server name this context is connected to. \since 0.7 */
 
226
/** Return the server name this context is connected to. */
223
227
const char* pa_context_get_server(pa_context *c);
224
228
 
225
 
/** Return the protocol version of the library. \since 0.8 */
 
229
/** Return the protocol version of the library. */
226
230
uint32_t pa_context_get_protocol_version(pa_context *c);
227
231
 
228
 
/** Return the protocol version of the connected server. \since 0.8 */
 
232
/** Return the protocol version of the connected server. */
229
233
uint32_t pa_context_get_server_protocol_version(pa_context *c);
230
234
 
 
235
/* Update the property list of the client, adding new entries. Please
 
236
 * note that it is highly recommended to set as much properties
 
237
 * initially via pa_context_new_with_proplist() as possible instead a
 
238
 * posteriori with this function, since that information may then be
 
239
 * used to route streams of the client to the right device. \since 0.9.11 */
 
240
pa_operation *pa_context_proplist_update(pa_context *c, pa_update_mode_t mode, pa_proplist *p, pa_context_success_cb_t cb, void *userdata);
 
241
 
 
242
/* Update the property list of the client, remove entries. \since 0.9.11 */
 
243
pa_operation *pa_context_proplist_remove(pa_context *c, const char *const keys[], pa_context_success_cb_t cb, void *userdata);
 
244
 
 
245
/** Return the client index this context is
 
246
 * identified in the server with. This is useful for usage with the
 
247
 * introspection functions, such as pa_context_get_client_info(). \since 0.9.11 */
 
248
uint32_t pa_context_get_index(pa_context *s);
 
249
 
231
250
PA_C_DECL_END
232
251
 
233
252
#endif