<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>PulseAudio: context.h File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.5 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="classes.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> </div> <div class="contents"> <h1>context.h File Reference</h1>Connection contexts for asynchrononous communication with a server. <a href="#_details">More...</a> <p> <p> <a href="context_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">An opaque connection context to a daemon. <a href="#ff56e9b3dd442a88227da084bb5c380a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#f198b84bc26cbc941313b1d75289e210">pa_context_notify_cb_t</a> )(<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Generic notification callback prototype. <a href="#f198b84bc26cbc941313b1d75289e210"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> )(<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, int success, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">A generic callback for operation completion. <a href="#010aff61766ac2d9585d78a164c0fc9a"></a><br></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#2784c754947a97f02c78b73d7b1c2d5f">pa_context_new</a> (<a class="el" href="structpa__mainloop__api.html">pa_mainloop_api</a> *mainloop, const char *name)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Instantiate a new connection context with an abstract mainloop API and an application name. <a href="#2784c754947a97f02c78b73d7b1c2d5f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#344c4ccf14d6a8842e83154a0aa99311">pa_context_unref</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Decrease the reference counter of the context by one. <a href="#344c4ccf14d6a8842e83154a0aa99311"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#4ba151a2c3b6b469d0b8bb1f905d6589">pa_context_ref</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Increase the reference counter of the context by one. <a href="#4ba151a2c3b6b469d0b8bb1f905d6589"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#eb7b395fd3a345fc181d6bfcdbe5f3d8">pa_context_set_state_callback</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, <a class="el" href="context_8h.html#f198b84bc26cbc941313b1d75289e210">pa_context_notify_cb_t</a> cb, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set a callback function that is called whenever the context status changes. <a href="#eb7b395fd3a345fc181d6bfcdbe5f3d8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#a8262c715ef8c48bcd2fbc5ae57a6df9">pa_context_errno</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the error number of the last failed operation. <a href="#a8262c715ef8c48bcd2fbc5ae57a6df9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#d33a71b4d3b61e678b14091bdcfe98aa">pa_context_is_pending</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return non-zero if some data is pending to be written to the connection. <a href="#d33a71b4d3b61e678b14091bdcfe98aa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="def_8h.html#696774cc2f758448c5ab10c2dd786c9d">pa_context_state_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#439b9a712321194390584737a0a7003f">pa_context_get_state</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the current context status. <a href="#439b9a712321194390584737a0a7003f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#983ce13d45c5f4b0db8e1a34e21f9fce">pa_context_connect</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, const char *server, <a class="el" href="def_8h.html#a330581bb9b282e6f6a28a3a2b4b634a">pa_context_flags_t</a> flags, const <a class="el" href="structpa__spawn__api.html">pa_spawn_api</a> *api)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Connect the context to the specified server. <a href="#983ce13d45c5f4b0db8e1a34e21f9fce"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#154b9d8057adfbb2cecfbd9406a27660">pa_context_disconnect</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Terminate the context connection immediately. <a href="#154b9d8057adfbb2cecfbd9406a27660"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#b94b42b05c233e010432888b7c496c50">pa_context_drain</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, <a class="el" href="context_8h.html#f198b84bc26cbc941313b1d75289e210">pa_context_notify_cb_t</a> cb, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Drain the context. <a href="#b94b42b05c233e010432888b7c496c50"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#9f664306d9e9be7603cd80e811b3c29a">pa_context_exit_daemon</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, <a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> cb, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Tell the daemon to exit. <a href="#9f664306d9e9be7603cd80e811b3c29a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#0710abf20bd14d140c77daded9b99dd1">pa_context_set_default_sink</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, const char *name, <a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> cb, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the name of the default sink. <a href="#0710abf20bd14d140c77daded9b99dd1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#c70ec892113745dc85d4045234fd0a33">pa_context_set_default_source</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, const char *name, <a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> cb, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the name of the default source. <a href="#c70ec892113745dc85d4045234fd0a33"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#e5cb66d55f916f30b5ea13bd5d5c755a">pa_context_is_local</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns 1 when the connection is to a local daemon. <a href="#e5cb66d55f916f30b5ea13bd5d5c755a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#e50c0e777b009d2bdcd32a07a91b735a">pa_context_set_name</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, const char *name, <a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> cb, void *userdata)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set a different application name for context on the server. <a href="#e50c0e777b009d2bdcd32a07a91b735a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#f5708e81def9f3d08610f7b40815288b">pa_context_get_server</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the server name this context is connected to. <a href="#f5708e81def9f3d08610f7b40815288b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#4fb9f8705d000461b2be83626e9d5635">pa_context_get_protocol_version</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the protocol version of the library. <a href="#4fb9f8705d000461b2be83626e9d5635"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="context_8h.html#012b6b7fcef6fc05676ee7f57c4b5a54">pa_context_get_server_protocol_version</a> (<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the protocol version of the connected server. <a href="#012b6b7fcef6fc05676ee7f57c4b5a54"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Connection contexts for asynchrononous communication with a server. <p> A pa_context object wraps a connection to a PulseAudio server using its native protocol. <hr><h2>Typedef Documentation</h2> <a class="anchor" name="ff56e9b3dd442a88227da084bb5c380a"></a><!-- doxytag: member="context.h::pa_context" ref="ff56e9b3dd442a88227da084bb5c380a" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> <a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> </td> </tr> </table> </div> <div class="memdoc"> <p> An opaque connection context to a daemon. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a0">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a0">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="f198b84bc26cbc941313b1d75289e210"></a><!-- doxytag: member="context.h::pa_context_notify_cb_t" ref="f198b84bc26cbc941313b1d75289e210" args=")(pa_context *c, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef void(* <a class="el" href="context_8h.html#f198b84bc26cbc941313b1d75289e210">pa_context_notify_cb_t</a>)(<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, void *userdata) </td> </tr> </table> </div> <div class="memdoc"> <p> Generic notification callback prototype. <p> </div> </div><p> <a class="anchor" name="010aff61766ac2d9585d78a164c0fc9a"></a><!-- doxytag: member="context.h::pa_context_success_cb_t" ref="010aff61766ac2d9585d78a164c0fc9a" args=")(pa_context *c, int success, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef void(* <a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a>)(<a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> *c, int success, void *userdata) </td> </tr> </table> </div> <div class="memdoc"> <p> A generic callback for operation completion. <p> </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="983ce13d45c5f4b0db8e1a34e21f9fce"></a><!-- doxytag: member="context.h::pa_context_connect" ref="983ce13d45c5f4b0db8e1a34e21f9fce" args="(pa_context *c, const char *server, pa_context_flags_t flags, const pa_spawn_api *api)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_context_connect </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>server</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="def_8h.html#a330581bb9b282e6f6a28a3a2b4b634a">pa_context_flags_t</a> </td> <td class="paramname"> <em>flags</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structpa__spawn__api.html">pa_spawn_api</a> * </td> <td class="paramname"> <em>api</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Connect the context to the specified server. <p> If server is NULL, connect to the default server. This routine may but will not always return synchronously on error. Use <a class="el" href="context_8h.html#eb7b395fd3a345fc181d6bfcdbe5f3d8" title="Set a callback function that is called whenever the context status changes.">pa_context_set_state_callback()</a> to be notified when the connection is established. If flags doesn't have PA_NOAUTOSPAWN set and no specific server is specified or accessible a new daemon is spawned. If api is non-NULL, the functions specified in the structure are used when forking a new child process. <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a104">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a66">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="154b9d8057adfbb2cecfbd9406a27660"></a><!-- doxytag: member="context.h::pa_context_disconnect" ref="154b9d8057adfbb2cecfbd9406a27660" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void pa_context_disconnect </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Terminate the context connection immediately. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a62">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a8">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="b94b42b05c233e010432888b7c496c50"></a><!-- doxytag: member="context.h::pa_context_drain" ref="b94b42b05c233e010432888b7c496c50" args="(pa_context *c, pa_context_notify_cb_t cb, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a>* pa_context_drain </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="context_8h.html#f198b84bc26cbc941313b1d75289e210">pa_context_notify_cb_t</a> </td> <td class="paramname"> <em>cb</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname"> <em>userdata</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Drain the context. <p> If there is nothing to drain, the function returns NULL <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a66">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a14">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="a8262c715ef8c48bcd2fbc5ae57a6df9"></a><!-- doxytag: member="context.h::pa_context_errno" ref="a8262c715ef8c48bcd2fbc5ae57a6df9" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_context_errno </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the error number of the last failed operation. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a14">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a11">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="9f664306d9e9be7603cd80e811b3c29a"></a><!-- doxytag: member="context.h::pa_context_exit_daemon" ref="9f664306d9e9be7603cd80e811b3c29a" args="(pa_context *c, pa_context_success_cb_t cb, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a>* pa_context_exit_daemon </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> </td> <td class="paramname"> <em>cb</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname"> <em>userdata</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Tell the daemon to exit. <p> The returned operation is unlikely to complete succesfully, since the daemon probably died before returning a success notification </div> </div><p> <a class="anchor" name="4fb9f8705d000461b2be83626e9d5635"></a><!-- doxytag: member="context.h::pa_context_get_protocol_version" ref="4fb9f8705d000461b2be83626e9d5635" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint32_t pa_context_get_protocol_version </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the protocol version of the library. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.8 </dd></dl> </div> </div><p> <a class="anchor" name="f5708e81def9f3d08610f7b40815288b"></a><!-- doxytag: member="context.h::pa_context_get_server" ref="f5708e81def9f3d08610f7b40815288b" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* pa_context_get_server </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the server name this context is connected to. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.7 </dd></dl> </div> </div><p> <a class="anchor" name="012b6b7fcef6fc05676ee7f57c4b5a54"></a><!-- doxytag: member="context.h::pa_context_get_server_protocol_version" ref="012b6b7fcef6fc05676ee7f57c4b5a54" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint32_t pa_context_get_server_protocol_version </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the protocol version of the connected server. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.8 </dd></dl> </div> </div><p> <a class="anchor" name="439b9a712321194390584737a0a7003f"></a><!-- doxytag: member="context.h::pa_context_get_state" ref="439b9a712321194390584737a0a7003f" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="def_8h.html#696774cc2f758448c5ab10c2dd786c9d">pa_context_state_t</a> pa_context_get_state </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the current context status. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a44">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a28">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="e5cb66d55f916f30b5ea13bd5d5c755a"></a><!-- doxytag: member="context.h::pa_context_is_local" ref="e5cb66d55f916f30b5ea13bd5d5c755a" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_context_is_local </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Returns 1 when the connection is to a local daemon. <p> Returns negative when no connection has been made yet. <dl class="since" compact><dt><b>Since:</b></dt><dd>0.5 </dd></dl> </div> </div><p> <a class="anchor" name="d33a71b4d3b61e678b14091bdcfe98aa"></a><!-- doxytag: member="context.h::pa_context_is_pending" ref="d33a71b4d3b61e678b14091bdcfe98aa" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int pa_context_is_pending </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return non-zero if some data is pending to be written to the connection. <p> </div> </div><p> <a class="anchor" name="2784c754947a97f02c78b73d7b1c2d5f"></a><!-- doxytag: member="context.h::pa_context_new" ref="2784c754947a97f02c78b73d7b1c2d5f" args="(pa_mainloop_api *mainloop, const char *name)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a>* pa_context_new </td> <td>(</td> <td class="paramtype"><a class="el" href="structpa__mainloop__api.html">pa_mainloop_api</a> * </td> <td class="paramname"> <em>mainloop</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Instantiate a new connection context with an abstract mainloop API and an application name. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a102">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a64">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="4ba151a2c3b6b469d0b8bb1f905d6589"></a><!-- doxytag: member="context.h::pa_context_ref" ref="4ba151a2c3b6b469d0b8bb1f905d6589" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a>* pa_context_ref </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Increase the reference counter of the context by one. <p> </div> </div><p> <a class="anchor" name="0710abf20bd14d140c77daded9b99dd1"></a><!-- doxytag: member="context.h::pa_context_set_default_sink" ref="0710abf20bd14d140c77daded9b99dd1" args="(pa_context *c, const char *name, pa_context_success_cb_t cb, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a>* pa_context_set_default_sink </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> </td> <td class="paramname"> <em>cb</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname"> <em>userdata</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set the name of the default sink. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.4 </dd></dl> </div> </div><p> <a class="anchor" name="c70ec892113745dc85d4045234fd0a33"></a><!-- doxytag: member="context.h::pa_context_set_default_source" ref="c70ec892113745dc85d4045234fd0a33" args="(pa_context *c, const char *name, pa_context_success_cb_t cb, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a>* pa_context_set_default_source </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> </td> <td class="paramname"> <em>cb</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname"> <em>userdata</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set the name of the default source. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.4 </dd></dl> </div> </div><p> <a class="anchor" name="e50c0e777b009d2bdcd32a07a91b735a"></a><!-- doxytag: member="context.h::pa_context_set_name" ref="e50c0e777b009d2bdcd32a07a91b735a" args="(pa_context *c, const char *name, pa_context_success_cb_t cb, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="operation_8h.html#5614a07f2e7a129e4cb16596ed452a0c">pa_operation</a>* pa_context_set_name </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="context_8h.html#010aff61766ac2d9585d78a164c0fc9a">pa_context_success_cb_t</a> </td> <td class="paramname"> <em>cb</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname"> <em>userdata</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set a different application name for context on the server. <p> <dl class="since" compact><dt><b>Since:</b></dt><dd>0.5 </dd></dl> </div> </div><p> <a class="anchor" name="eb7b395fd3a345fc181d6bfcdbe5f3d8"></a><!-- doxytag: member="context.h::pa_context_set_state_callback" ref="eb7b395fd3a345fc181d6bfcdbe5f3d8" args="(pa_context *c, pa_context_notify_cb_t cb, void *userdata)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void pa_context_set_state_callback </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="context_8h.html#f198b84bc26cbc941313b1d75289e210">pa_context_notify_cb_t</a> </td> <td class="paramname"> <em>cb</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname"> <em>userdata</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set a callback function that is called whenever the context status changes. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a103">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a65">paplay.c</a>.</dl> </div> </div><p> <a class="anchor" name="344c4ccf14d6a8842e83154a0aa99311"></a><!-- doxytag: member="context.h::pa_context_unref" ref="344c4ccf14d6a8842e83154a0aa99311" args="(pa_context *c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void pa_context_unref </td> <td>(</td> <td class="paramtype"><a class="el" href="context_8h.html#ff56e9b3dd442a88227da084bb5c380a">pa_context</a> * </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Decrease the reference counter of the context by one. <p> <dl compact><dt><b>Examples: </b></dt><dd> <a class="el" href="pacat_8c-example.html#a107">pacat.c</a>, and <a class="el" href="paplay_8c-example.html#a68">paplay.c</a>.</dl> </div> </div><p> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Wed Mar 26 12:02:40 2008 for PulseAudio by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address> </body> </html>