summaryrefslogtreecommitdiff
path: root/link_8c.html
diff options
context:
space:
mode:
Diffstat (limited to 'link_8c.html')
-rw-r--r--link_8c.html610
1 files changed, 610 insertions, 0 deletions
diff --git a/link_8c.html b/link_8c.html
new file mode 100644
index 00000000..037466af
--- /dev/null
+++ b/link_8c.html
@@ -0,0 +1,610 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.15"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>PipeWire: link.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+ $(document).ready(initResizable);
+/* @license-end */</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">PipeWire
+ &#160;<span id="projectnumber">0.2.9</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.15 -->
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+ initMenu('',false,false,'search.php','Search');
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(document).ready(function(){initNavTree('link_8c.html','');});
+/* @license-end */
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">link.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><div class="dynheader">
+Include dependency graph for link.c:</div>
+<div class="dyncontent">
+<div class="center"><img src="link_8c__incl.png" border="0" usemap="#link_8c" alt=""/></div>
+<map name="link_8c" id="link_8c">
+<area shape="rect" title=" " alt="" coords="2226,5,2283,32"/>
+<area shape="rect" title=" " alt="" coords="43,155,111,181"/>
+<area shape="rect" title=" " alt="" coords="1918,80,1989,107"/>
+<area shape="rect" title=" " alt="" coords="2013,80,2080,107"/>
+<area shape="rect" title=" " alt="" coords="2104,80,2168,107"/>
+<area shape="rect" title=" " alt="" coords="2192,80,2317,107"/>
+<area shape="rect" title=" " alt="" coords="2341,80,2469,107"/>
+<area shape="rect" title=" " alt="" coords="2493,80,2640,107"/>
+<area shape="rect" title=" " alt="" coords="75,603,224,629"/>
+<area shape="rect" title=" " alt="" coords="2665,80,2799,107"/>
+<area shape="rect" href="keys_8h.html" title=" " alt="" coords="2824,80,2949,107"/>
+<area shape="rect" title=" " alt="" coords="2974,80,3114,107"/>
+<area shape="rect" href="interfaces_8h.html" title=" " alt="" coords="431,80,590,107"/>
+<area shape="rect" href="control_8h.html" title=" " alt="" coords="1704,80,1843,107"/>
+<area shape="rect" href="link_8h.html" title=" " alt="" coords="1402,155,1521,181"/>
+<area shape="rect" href="type_8h.html" title=" " alt="" coords="3139,80,3261,107"/>
+<area shape="rect" href="work-queue_8h.html" title=" " alt="" coords="2025,229,2196,256"/>
+<area shape="rect" title=" " alt="" coords="3286,80,3423,107"/>
+<area shape="rect" title=" " alt="" coords="3447,80,3577,107"/>
+<area shape="rect" title=" " alt="" coords="3601,80,3751,107"/>
+<area shape="rect" title=" " alt="" coords="187,155,261,181"/>
+<area shape="rect" title=" " alt="" coords="810,603,931,629"/>
+<area shape="rect" title=" " alt="" coords="1335,603,1460,629"/>
+<area shape="rect" title=" " alt="" coords="285,155,448,181"/>
+<area shape="rect" href="introspect_8h.html" title=" " alt="" coords="1081,528,1239,555"/>
+<area shape="rect" href="proxy_8h.html" title=" " alt="" coords="829,155,958,181"/>
+<area shape="rect" href="permission_8h.html" title=" " alt="" coords="787,528,954,555"/>
+<area shape="rect" href="properties_8h.html" title=" " alt="" coords="1645,603,1805,629"/>
+<area shape="rect" title=" " alt="" coords="1667,677,1784,704"/>
+<area shape="rect" href="protocol_8h.html" title=" " alt="" coords="820,229,967,256"/>
+<area shape="rect" title=" " alt="" coords="675,304,789,331"/>
+<area shape="rect" href="core_8h.html" title=" " alt="" coords="1404,304,1527,331"/>
+<area shape="rect" href="utils_8h.html" title=" " alt="" coords="813,304,936,331"/>
+<area shape="rect" href="client_8h.html" title=" " alt="" coords="1467,453,1597,480"/>
+<area shape="rect" href="global_8h.html" title=" " alt="" coords="1763,528,1898,555"/>
+<area shape="rect" href="loop_8h.html" title=" " alt="" coords="2056,379,2179,405"/>
+<area shape="rect" href="factory_8h.html" title=" " alt="" coords="1565,379,1704,405"/>
+<area shape="rect" href="resource_8h.html" title=" " alt="" coords="1537,528,1687,555"/>
+<area shape="rect" title=" " alt="" coords="2051,453,2194,480"/>
+<area shape="rect" title=" " alt="" coords="675,379,789,405"/>
+<area shape="rect" href="node_8h.html" title=" " alt="" coords="1562,155,1689,181"/>
+<area shape="rect" title=" " alt="" coords="1653,229,1787,256"/>
+<area shape="rect" href="port_8h.html" title=" " alt="" coords="1327,229,1447,256"/>
+<area shape="rect" title=" " alt="" coords="3139,155,3261,181"/>
+</map>
+</div>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a7781bc9613ec655352585fb1bac2595d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a7781bc9613ec655352585fb1bac2595d">MAX_BUFFERS</a>&#160;&#160;&#160;64</td></tr>
+<tr class="separator:a7781bc9613ec655352585fb1bac2595d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06430d647cebbe27e0a0163c4e54d980"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a06430d647cebbe27e0a0163c4e54d980">pw_link_resource_info</a>(r, ...)&#160;&#160;&#160;<a class="el" href="resource_8h.html#a61e286d92a2f528ebe48cb1436ac4eba">pw_resource_call</a>(r,struct <a class="el" href="structpw__link__proxy__events.html">pw_link_proxy_events</a>,info,0,__VA_ARGS__)</td></tr>
+<tr class="separator:a06430d647cebbe27e0a0163c4e54d980"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af22965afe981c8a496ca78018c5965d5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#af22965afe981c8a496ca78018c5965d5">pw_link_activate</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *this)</td></tr>
+<tr class="separator:af22965afe981c8a496ca78018c5965d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f6c6d8dcef5bab6ee8a0adabfa2d9aa"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a9f6c6d8dcef5bab6ee8a0adabfa2d9aa">pw_link_prepare</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *this)</td></tr>
+<tr class="separator:a9f6c6d8dcef5bab6ee8a0adabfa2d9aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a071efe74e66847be44f33c0a1137ffc4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a071efe74e66847be44f33c0a1137ffc4">pw_link_deactivate</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *this)</td></tr>
+<tr class="separator:a071efe74e66847be44f33c0a1137ffc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad626afd3c5efcca566444cfa6f7f6f4"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#aad626afd3c5efcca566444cfa6f7f6f4">pw_link_new</a> (struct <a class="el" href="classpw__core.html">pw_core</a> *core, struct <a class="el" href="classpw__port.html">pw_port</a> *output, struct <a class="el" href="classpw__port.html">pw_port</a> *input, struct spa_pod *format_filter, struct <a class="el" href="structpw__properties.html">pw_properties</a> *properties, size_t user_data_size)</td></tr>
+<tr class="separator:aad626afd3c5efcca566444cfa6f7f6f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e8395287b38de06906630600956891e"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a0e8395287b38de06906630600956891e">pw_link_register</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link, struct <a class="el" href="classpw__client.html">pw_client</a> *owner, struct <a class="el" href="classpw__global.html">pw_global</a> *parent, struct <a class="el" href="structpw__properties.html">pw_properties</a> *properties)</td></tr>
+<tr class="memdesc:a0e8395287b38de06906630600956891e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finish link configuration and register. <a href="#a0e8395287b38de06906630600956891e">More...</a><br /></td></tr>
+<tr class="separator:a0e8395287b38de06906630600956891e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0c9c9fe9460081bed81f9f89afa35ab"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#ac0c9c9fe9460081bed81f9f89afa35ab">pw_link_destroy</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link)</td></tr>
+<tr class="separator:ac0c9c9fe9460081bed81f9f89afa35ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae54f6a77ededfec0d0f358760635f16a"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#ae54f6a77ededfec0d0f358760635f16a">pw_link_add_listener</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link, struct spa_hook *listener, const struct <a class="el" href="structpw__link__events.html">pw_link_events</a> *events, void *<a class="el" href="structdata.html">data</a>)</td></tr>
+<tr class="memdesc:ae54f6a77ededfec0d0f358760635f16a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add an event listener to <em>link</em>. <a href="#ae54f6a77ededfec0d0f358760635f16a">More...</a><br /></td></tr>
+<tr class="separator:ae54f6a77ededfec0d0f358760635f16a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0d2446d075e78f65a34bf0c3bf77c69"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#af0d2446d075e78f65a34bf0c3bf77c69">pw_link_find</a> (struct <a class="el" href="classpw__port.html">pw_port</a> *output_port, struct <a class="el" href="classpw__port.html">pw_port</a> *input_port)</td></tr>
+<tr class="separator:af0d2446d075e78f65a34bf0c3bf77c69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c23dfd6838d8068537fa79983feaa58"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__core.html">pw_core</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a9c23dfd6838d8068537fa79983feaa58">pw_link_get_core</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link)</td></tr>
+<tr class="memdesc:a9c23dfd6838d8068537fa79983feaa58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the core of a link. <a href="#a9c23dfd6838d8068537fa79983feaa58">More...</a><br /></td></tr>
+<tr class="separator:a9c23dfd6838d8068537fa79983feaa58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c21dd9fce2d0e5bd373d698f5a5ab21"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a7c21dd9fce2d0e5bd373d698f5a5ab21">pw_link_get_user_data</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link)</td></tr>
+<tr class="memdesc:a7c21dd9fce2d0e5bd373d698f5a5ab21"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the user_data of a link, the size of the memory is given when constructing the link. <a href="#a7c21dd9fce2d0e5bd373d698f5a5ab21">More...</a><br /></td></tr>
+<tr class="separator:a7c21dd9fce2d0e5bd373d698f5a5ab21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ee4f558e156891906f557ab0eb36f02"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT const struct <a class="el" href="structpw__link__info.html">pw_link_info</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a1ee4f558e156891906f557ab0eb36f02">pw_link_get_info</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link)</td></tr>
+<tr class="memdesc:a1ee4f558e156891906f557ab0eb36f02"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the link info. <a href="#a1ee4f558e156891906f557ab0eb36f02">More...</a><br /></td></tr>
+<tr class="separator:a1ee4f558e156891906f557ab0eb36f02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a688f8f13cf3e200efba0b88b9bb6323f"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__global.html">pw_global</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a688f8f13cf3e200efba0b88b9bb6323f">pw_link_get_global</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link)</td></tr>
+<tr class="memdesc:a688f8f13cf3e200efba0b88b9bb6323f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the global of the link. <a href="#a688f8f13cf3e200efba0b88b9bb6323f">More...</a><br /></td></tr>
+<tr class="separator:a688f8f13cf3e200efba0b88b9bb6323f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe685156138aa2795b25f3ad45e25a9f"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__port.html">pw_port</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#afe685156138aa2795b25f3ad45e25a9f">pw_link_get_output</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link)</td></tr>
+<tr class="memdesc:afe685156138aa2795b25f3ad45e25a9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the output port of the link. <a href="#afe685156138aa2795b25f3ad45e25a9f">More...</a><br /></td></tr>
+<tr class="separator:afe685156138aa2795b25f3ad45e25a9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48c90441f11e25525c487570d44e7ead"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__port.html">pw_port</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="link_8c.html#a48c90441f11e25525c487570d44e7ead">pw_link_get_input</a> (struct <a class="el" href="classpw__link.html">pw_link</a> *link)</td></tr>
+<tr class="memdesc:a48c90441f11e25525c487570d44e7ead"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the input port of the link. <a href="#a48c90441f11e25525c487570d44e7ead">More...</a><br /></td></tr>
+<tr class="separator:a48c90441f11e25525c487570d44e7ead"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a7781bc9613ec655352585fb1bac2595d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7781bc9613ec655352585fb1bac2595d">&#9670;&nbsp;</a></span>MAX_BUFFERS</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_BUFFERS&#160;&#160;&#160;64</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a06430d647cebbe27e0a0163c4e54d980"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06430d647cebbe27e0a0163c4e54d980">&#9670;&nbsp;</a></span>pw_link_resource_info</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define pw_link_resource_info</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="resource_8h.html#a61e286d92a2f528ebe48cb1436ac4eba">pw_resource_call</a>(r,struct <a class="el" href="structpw__link__proxy__events.html">pw_link_proxy_events</a>,info,0,__VA_ARGS__)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="af22965afe981c8a496ca78018c5965d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af22965afe981c8a496ca78018c5965d5">&#9670;&nbsp;</a></span>pw_link_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int pw_link_activate </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>this</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="reference">References <a class="el" href="link_8c.html#a9f6c6d8dcef5bab6ee8a0adabfa2d9aa">pw_link_prepare()</a>, <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</a>, and <a class="el" href="structimpl.html#a6eaec9ea671abe6434946657ac2f1bae">impl::this</a>.</p>
+
+</div>
+</div>
+<a id="ae54f6a77ededfec0d0f358760635f16a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae54f6a77ededfec0d0f358760635f16a">&#9670;&nbsp;</a></span>pw_link_add_listener()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void pw_link_add_listener </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct spa_hook *&#160;</td>
+ <td class="paramname"><em>listener</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const struct <a class="el" href="structpw__link__events.html">pw_link_events</a> *&#160;</td>
+ <td class="paramname"><em>events</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add an event listener to <em>link</em>. </p>
+
+<p class="reference">References <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</a>.</p>
+
+</div>
+</div>
+<a id="a071efe74e66847be44f33c0a1137ffc4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a071efe74e66847be44f33c0a1137ffc4">&#9670;&nbsp;</a></span>pw_link_deactivate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int pw_link_deactivate </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>this</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="reference">References <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</a>, and <a class="el" href="loop_8h.html#afff39c7f964a4b011c4fc589c6a6ec92">pw_loop_invoke</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="link_8c.html#ac0c9c9fe9460081bed81f9f89afa35ab">pw_link_destroy()</a>.</p>
+
+</div>
+</div>
+<a id="ac0c9c9fe9460081bed81f9f89afa35ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0c9c9fe9460081bed81f9f89afa35ab">&#9670;&nbsp;</a></span>pw_link_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void pw_link_destroy </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="reference">References <a class="el" href="link_8c.html#a071efe74e66847be44f33c0a1137ffc4">pw_link_deactivate()</a>, and <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</a>.</p>
+
+</div>
+</div>
+<a id="af0d2446d075e78f65a34bf0c3bf77c69"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0d2446d075e78f65a34bf0c3bf77c69">&#9670;&nbsp;</a></span>pw_link_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="classpw__link.html">pw_link</a>* pw_link_find </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__port.html">pw_port</a> *&#160;</td>
+ <td class="paramname"><em>output_port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="classpw__port.html">pw_port</a> *&#160;</td>
+ <td class="paramname"><em>input_port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a9c23dfd6838d8068537fa79983feaa58"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c23dfd6838d8068537fa79983feaa58">&#9670;&nbsp;</a></span>pw_link_get_core()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__core.html">pw_core</a>* pw_link_get_core </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the core of a link. </p>
+
+</div>
+</div>
+<a id="a688f8f13cf3e200efba0b88b9bb6323f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a688f8f13cf3e200efba0b88b9bb6323f">&#9670;&nbsp;</a></span>pw_link_get_global()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__global.html">pw_global</a>* pw_link_get_global </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the global of the link. </p>
+
+</div>
+</div>
+<a id="a1ee4f558e156891906f557ab0eb36f02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ee4f558e156891906f557ab0eb36f02">&#9670;&nbsp;</a></span>pw_link_get_info()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT const struct <a class="el" href="structpw__link__info.html">pw_link_info</a>* pw_link_get_info </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the link info. </p>
+
+</div>
+</div>
+<a id="a48c90441f11e25525c487570d44e7ead"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48c90441f11e25525c487570d44e7ead">&#9670;&nbsp;</a></span>pw_link_get_input()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__port.html">pw_port</a>* pw_link_get_input </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the input port of the link. </p>
+
+</div>
+</div>
+<a id="afe685156138aa2795b25f3ad45e25a9f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe685156138aa2795b25f3ad45e25a9f">&#9670;&nbsp;</a></span>pw_link_get_output()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__port.html">pw_port</a>* pw_link_get_output </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the output port of the link. </p>
+
+</div>
+</div>
+<a id="a7c21dd9fce2d0e5bd373d698f5a5ab21"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c21dd9fce2d0e5bd373d698f5a5ab21">&#9670;&nbsp;</a></span>pw_link_get_user_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void* pw_link_get_user_data </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the user_data of a link, the size of the memory is given when constructing the link. </p>
+
+</div>
+</div>
+<a id="aad626afd3c5efcca566444cfa6f7f6f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aad626afd3c5efcca566444cfa6f7f6f4">&#9670;&nbsp;</a></span>pw_link_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__link.html">pw_link</a>* pw_link_new </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__core.html">pw_core</a> *&#160;</td>
+ <td class="paramname"><em>core</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="classpw__port.html">pw_port</a> *&#160;</td>
+ <td class="paramname"><em>output</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="classpw__port.html">pw_port</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct spa_pod *&#160;</td>
+ <td class="paramname"><em>format_filter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structpw__properties.html">pw_properties</a> *&#160;</td>
+ <td class="paramname"><em>properties</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>user_data_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="reference">References <a class="el" href="introspect_8h.html#a6e9e847059d68cbdb608abc8eb6b631da056778b9306610d7070ea4c3cc260c53">PW_DIRECTION_INPUT</a>, <a class="el" href="introspect_8h.html#a6e9e847059d68cbdb608abc8eb6b631da08983f9bf02a2e66e0ea838631d64ebe">PW_DIRECTION_OUTPUT</a>, and <a class="el" href="classpw__link.html#ac47df3717749e208df9374b42bf77464">pw_link::pw_link_find()</a>.</p>
+
+</div>
+</div>
+<a id="a9f6c6d8dcef5bab6ee8a0adabfa2d9aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f6c6d8dcef5bab6ee8a0adabfa2d9aa">&#9670;&nbsp;</a></span>pw_link_prepare()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int pw_link_prepare </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>this</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="reference">References <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="link_8c.html#af22965afe981c8a496ca78018c5965d5">pw_link_activate()</a>.</p>
+
+</div>
+</div>
+<a id="a0e8395287b38de06906630600956891e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e8395287b38de06906630600956891e">&#9670;&nbsp;</a></span>pw_link_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT int pw_link_register </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__link.html">pw_link</a> *&#160;</td>
+ <td class="paramname"><em>link</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="classpw__client.html">pw_client</a> *&#160;</td>
+ <td class="paramname"><em>owner</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="classpw__global.html">pw_global</a> *&#160;</td>
+ <td class="paramname"><em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structpw__properties.html">pw_properties</a> *&#160;</td>
+ <td class="paramname"><em>properties</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Finish link configuration and register. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">link</td><td>the link to register </td></tr>
+ <tr><td class="paramname">owner</td><td>optional link owner </td></tr>
+ <tr><td class="paramname">parent</td><td>parent global </td></tr>
+ <tr><td class="paramname">properties</td><td>extra properties </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p class="reference">References <a class="el" href="classpw__global.html#a70cf2ad61f1f9b7c1cb40a1ea6e73ce5">pw_global::pw_global_new()</a>, <a class="el" href="keys_8h.html#ae327718323a22392d489db85ad83ab8f">PW_KEY_LINK_INPUT_PORT</a>, <a class="el" href="keys_8h.html#a4976c4bc1a9d0119617d02fae557e108">PW_KEY_LINK_OUTPUT_PORT</a>, <a class="el" href="structpw__properties.html#aea9bdd771760e44ca7d77b5113297610">pw_properties::pw_properties_new()</a>, <a class="el" href="structpw__properties.html#a24c715aa1d9eec46b7ebef61410d6f13">pw_properties::pw_properties_setf()</a>, <a class="el" href="type_8h.html#a06fc87d81c62e9abb8790b6e5713c55ba61cbbbe98f979a145298bbec81152a81">PW_TYPE_INTERFACE_Link</a>, and <a class="el" href="interfaces_8h.html#a28f265a1a5bf0667d3ffeef584e858f9">PW_VERSION_LINK_PROXY</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_7129a66c92fe7beef816c2ac906ef0b3.html">pipewire</a></li><li class="navelem"><a class="el" href="link_8c.html">link.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
+ </ul>
+</div>
+</body>
+</html>