summaryrefslogtreecommitdiff
path: root/resource_8c.html
diff options
context:
space:
mode:
Diffstat (limited to 'resource_8c.html')
-rw-r--r--resource_8c.html593
1 files changed, 593 insertions, 0 deletions
diff --git a/resource_8c.html b/resource_8c.html
new file mode 100644
index 00000000..7ea6345c
--- /dev/null
+++ b/resource_8c.html
@@ -0,0 +1,593 @@
+<!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: resource.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('resource_8c.html','');});
+/* @license-end */
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resource.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><div class="dynheader">
+Include dependency graph for resource.c:</div>
+<div class="dyncontent">
+<div class="center"><img src="resource_8c__incl.png" border="0" usemap="#resource_8c" alt=""/></div>
+<map name="resource_8c" id="resource_8c">
+<area shape="rect" title=" " alt="" coords="1560,5,1649,32"/>
+<area shape="rect" title=" " alt="" coords="5,80,76,107"/>
+<area shape="rect" href="interfaces_8h.html" title=" " alt="" coords="565,80,724,107"/>
+<area shape="rect" href="protocol_8h.html" title=" " alt="" coords="1143,229,1290,256"/>
+<area shape="rect" href="resource_8h.html" title=" " alt="" coords="537,528,688,555"/>
+<area shape="rect" title=" " alt="" coords="1643,80,1783,107"/>
+<area shape="rect" href="type_8h.html" title=" " alt="" coords="1807,80,1930,107"/>
+<area shape="rect" title=" " alt="" coords="1954,80,2095,107"/>
+<area shape="rect" title=" " alt="" coords="645,155,719,181"/>
+<area shape="rect" title=" " alt="" coords="744,155,812,181"/>
+<area shape="rect" title=" " alt="" coords="1304,603,1425,629"/>
+<area shape="rect" title=" " alt="" coords="254,603,379,629"/>
+<area shape="rect" title=" " alt="" coords="253,155,415,181"/>
+<area shape="rect" title=" " alt="" coords="61,603,210,629"/>
+<area shape="rect" href="introspect_8h.html" title=" " alt="" coords="355,528,513,555"/>
+<area shape="rect" href="proxy_8h.html" title=" " alt="" coords="440,155,569,181"/>
+<area shape="rect" href="permission_8h.html" title=" " alt="" coords="1403,528,1569,555"/>
+<area shape="rect" href="properties_8h.html" title=" " alt="" coords="907,603,1067,629"/>
+<area shape="rect" title=" " alt="" coords="929,677,1046,704"/>
+<area shape="rect" title=" " alt="" coords="1112,304,1225,331"/>
+<area shape="rect" href="core_8h.html" title=" " alt="" coords="761,304,883,331"/>
+<area shape="rect" href="utils_8h.html" title=" " alt="" coords="1301,304,1423,331"/>
+<area shape="rect" href="client_8h.html" title=" " alt="" coords="650,453,781,480"/>
+<area shape="rect" href="global_8h.html" title=" " alt="" coords="815,528,949,555"/>
+<area shape="rect" href="loop_8h.html" title=" " alt="" coords="933,379,1055,405"/>
+<area shape="rect" href="factory_8h.html" title=" " alt="" coords="693,379,831,405"/>
+<area shape="rect" title=" " alt="" coords="1032,453,1175,480"/>
+<area shape="rect" title=" " alt="" coords="1301,379,1415,405"/>
+<area shape="rect" title=" " alt="" coords="1807,155,1930,181"/>
+</map>
+</div>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a13bc34ff7eecd313331ff6d95e8c95a5"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a13bc34ff7eecd313331ff6d95e8c95a5">pw_resource_new</a> (struct <a class="el" href="classpw__client.html">pw_client</a> *client, uint32_t id, uint32_t permissions, uint32_t type, uint32_t version, size_t user_data_size)</td></tr>
+<tr class="memdesc:a13bc34ff7eecd313331ff6d95e8c95a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Make a new resource for client. <a href="#a13bc34ff7eecd313331ff6d95e8c95a5">More...</a><br /></td></tr>
+<tr class="separator:a13bc34ff7eecd313331ff6d95e8c95a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bf7dc1a63e1424d15ed17f47a26aaed"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__client.html">pw_client</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a3bf7dc1a63e1424d15ed17f47a26aaed">pw_resource_get_client</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:a3bf7dc1a63e1424d15ed17f47a26aaed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the client owning this resource. <a href="#a3bf7dc1a63e1424d15ed17f47a26aaed">More...</a><br /></td></tr>
+<tr class="separator:a3bf7dc1a63e1424d15ed17f47a26aaed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac56732c3393fe64009d30f2ccc340faa"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#ac56732c3393fe64009d30f2ccc340faa">pw_resource_get_id</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:ac56732c3393fe64009d30f2ccc340faa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the unique id of this resource. <a href="#ac56732c3393fe64009d30f2ccc340faa">More...</a><br /></td></tr>
+<tr class="separator:ac56732c3393fe64009d30f2ccc340faa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d95e95f9b243ccfb01d72a4b830b723"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a0d95e95f9b243ccfb01d72a4b830b723">pw_resource_get_permissions</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:a0d95e95f9b243ccfb01d72a4b830b723"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the permissions of this resource. <a href="#a0d95e95f9b243ccfb01d72a4b830b723">More...</a><br /></td></tr>
+<tr class="separator:a0d95e95f9b243ccfb01d72a4b830b723"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a283b389151fc805f555058ec343434e4"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a283b389151fc805f555058ec343434e4">pw_resource_get_type</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:a283b389151fc805f555058ec343434e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the type of this resource. <a href="#a283b389151fc805f555058ec343434e4">More...</a><br /></td></tr>
+<tr class="separator:a283b389151fc805f555058ec343434e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7534e38e4825d07fe8330fa99f6fb62"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct <a class="el" href="classpw__protocol.html">pw_protocol</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#ae7534e38e4825d07fe8330fa99f6fb62">pw_resource_get_protocol</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:ae7534e38e4825d07fe8330fa99f6fb62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the protocol used for this resource. <a href="#ae7534e38e4825d07fe8330fa99f6fb62">More...</a><br /></td></tr>
+<tr class="separator:ae7534e38e4825d07fe8330fa99f6fb62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b8380e07403b42b322a2b0aaee65048"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a8b8380e07403b42b322a2b0aaee65048">pw_resource_get_user_data</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:a8b8380e07403b42b322a2b0aaee65048"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the user data for the resource, the size was given in <a class="el" href="resource_8c.html#a13bc34ff7eecd313331ff6d95e8c95a5">pw_resource_new</a>. <a href="#a8b8380e07403b42b322a2b0aaee65048">More...</a><br /></td></tr>
+<tr class="separator:a8b8380e07403b42b322a2b0aaee65048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd32e674691ae1c261494fb1e177e550"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#afd32e674691ae1c261494fb1e177e550">pw_resource_add_listener</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource, struct spa_hook *listener, const struct <a class="el" href="structpw__resource__events.html">pw_resource_events</a> *events, void *<a class="el" href="structdata.html">data</a>)</td></tr>
+<tr class="memdesc:afd32e674691ae1c261494fb1e177e550"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add an event listener. <a href="#afd32e674691ae1c261494fb1e177e550">More...</a><br /></td></tr>
+<tr class="separator:afd32e674691ae1c261494fb1e177e550"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae052a184a74219884daf783817e48789"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#ae052a184a74219884daf783817e48789">pw_resource_add_object_listener</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource, struct spa_hook *listener, const void *funcs, void *<a class="el" href="structdata.html">data</a>)</td></tr>
+<tr class="memdesc:ae052a184a74219884daf783817e48789"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the resource implementation. <a href="#ae052a184a74219884daf783817e48789">More...</a><br /></td></tr>
+<tr class="separator:ae052a184a74219884daf783817e48789"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9718aa335fbb9c1b8dfc605f05127078"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT struct spa_hook_list *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a9718aa335fbb9c1b8dfc605f05127078">pw_resource_get_object_listeners</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:a9718aa335fbb9c1b8dfc605f05127078"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the list of object listeners from a resource. <a href="#a9718aa335fbb9c1b8dfc605f05127078">More...</a><br /></td></tr>
+<tr class="separator:a9718aa335fbb9c1b8dfc605f05127078"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab264bc9e31ca19a13128fd9a86a9a89c"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT const struct <a class="el" href="structpw__protocol__marshal.html">pw_protocol_marshal</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#ab264bc9e31ca19a13128fd9a86a9a89c">pw_resource_get_marshal</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:ab264bc9e31ca19a13128fd9a86a9a89c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the marshal functions for the resource. <a href="#ab264bc9e31ca19a13128fd9a86a9a89c">More...</a><br /></td></tr>
+<tr class="separator:ab264bc9e31ca19a13128fd9a86a9a89c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51c7cc27c6480a9f90aa46f682f78fbb"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a51c7cc27c6480a9f90aa46f682f78fbb">pw_resource_ping</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource, int seq)</td></tr>
+<tr class="memdesc:a51c7cc27c6480a9f90aa46f682f78fbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate an ping event for a resource. <a href="#a51c7cc27c6480a9f90aa46f682f78fbb">More...</a><br /></td></tr>
+<tr class="separator:a51c7cc27c6480a9f90aa46f682f78fbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae48b28b3e2a6c1efc84a625e5e23debd"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#ae48b28b3e2a6c1efc84a625e5e23debd">pw_resource_error</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource, int res, const char *error,...)</td></tr>
+<tr class="memdesc:ae48b28b3e2a6c1efc84a625e5e23debd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate an error for a resource. <a href="#ae48b28b3e2a6c1efc84a625e5e23debd">More...</a><br /></td></tr>
+<tr class="separator:ae48b28b3e2a6c1efc84a625e5e23debd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77aff410edb984bf14e2d2787c567480"><td class="memItemLeft" align="right" valign="top">SPA_EXPORT void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resource_8c.html#a77aff410edb984bf14e2d2787c567480">pw_resource_destroy</a> (struct <a class="el" href="classpw__resource.html">pw_resource</a> *resource)</td></tr>
+<tr class="memdesc:a77aff410edb984bf14e2d2787c567480"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a resource. <a href="#a77aff410edb984bf14e2d2787c567480">More...</a><br /></td></tr>
+<tr class="separator:a77aff410edb984bf14e2d2787c567480"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="afd32e674691ae1c261494fb1e177e550"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afd32e674691ae1c261494fb1e177e550">&#9670;&nbsp;</a></span>pw_resource_add_listener()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void pw_resource_add_listener </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</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__resource__events.html">pw_resource_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. </p>
+
+</div>
+</div>
+<a id="ae052a184a74219884daf783817e48789"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae052a184a74219884daf783817e48789">&#9670;&nbsp;</a></span>pw_resource_add_object_listener()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void pw_resource_add_object_listener </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</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 void *&#160;</td>
+ <td class="paramname"><em>funcs</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>Set the resource implementation. </p>
+
+</div>
+</div>
+<a id="a77aff410edb984bf14e2d2787c567480"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a77aff410edb984bf14e2d2787c567480">&#9670;&nbsp;</a></span>pw_resource_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void pw_resource_destroy </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy a resource. </p>
+
+<p class="reference">References <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</a>, and <a class="el" href="structpw__map.html#a10124711c6ab6ad3c1b9e6cab49dc4e4">pw_map::pw_map_insert_at()</a>.</p>
+
+<p class="reference">Referenced by <a class="el" href="classpw__core.html#a3fe8a902e97223d11c0e8e4640c16379">pw_core::pw_core_destroy()</a>, <a class="el" href="classpw__global.html#a57e86d7712b658ee7d2e0f73cfcb9db5">pw_global::pw_global_destroy()</a>, and <a class="el" href="global_8c.html#a523224e7089f253c06b3f93d608d0897">pw_global_update_permissions()</a>.</p>
+<div class="dynheader">
+Here is the caller graph for this function:</div>
+<div class="dyncontent">
+<div class="center"><img src="resource_8c_a77aff410edb984bf14e2d2787c567480_icgraph.png" border="0" usemap="#resource_8c_a77aff410edb984bf14e2d2787c567480_icgraph" alt=""/></div>
+<map name="resource_8c_a77aff410edb984bf14e2d2787c567480_icgraph" id="resource_8c_a77aff410edb984bf14e2d2787c567480_icgraph">
+<area shape="rect" title="Destroy a resource." alt="" coords="1020,75,1180,101"/>
+<area shape="rect" href="classpw__core.html#a3fe8a902e97223d11c0e8e4640c16379" title="Destroy a core object." alt="" coords="232,24,427,51"/>
+<area shape="rect" href="classpw__global.html#a57e86d7712b658ee7d2e0f73cfcb9db5" title="Destroy a global." alt="" coords="777,67,940,109"/>
+<area shape="rect" href="global_8c.html#a523224e7089f253c06b3f93d608d0897" title=" " alt="" coords="745,163,972,189"/>
+<area shape="rect" href="stream_8c.html#a0aa398ef7b09697a0e48719b27112614" title=" " alt="" coords="5,24,184,51"/>
+<area shape="rect" href="device_8c.html#a413c1f742b769410a3400e4859d92588" title=" " alt="" coords="513,49,659,76"/>
+<area shape="rect" href="factory_8c.html#a3ec95397d9e642db23678f2a52800831" title=" " alt="" coords="511,100,661,127"/>
+<area shape="rect" href="classpw__module.html#aeb91aaec73271350e79774d753202045" title="Destroy a module." alt="" coords="496,151,676,193"/>
+<area shape="rect" href="client_8c.html#aa4a8794d28485a52146b71c1fad7a479" title="Update the client permissions." alt="" coords="475,217,697,244"/>
+</map>
+</div>
+
+</div>
+</div>
+<a id="ae48b28b3e2a6c1efc84a625e5e23debd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae48b28b3e2a6c1efc84a625e5e23debd">&#9670;&nbsp;</a></span>pw_resource_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void pw_resource_error </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>res</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>error</em>, </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></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Generate an error for a resource. </p>
+
+</div>
+</div>
+<a id="a3bf7dc1a63e1424d15ed17f47a26aaed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3bf7dc1a63e1424d15ed17f47a26aaed">&#9670;&nbsp;</a></span>pw_resource_get_client()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__client.html">pw_client</a>* pw_resource_get_client </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the client owning this resource. </p>
+
+</div>
+</div>
+<a id="ac56732c3393fe64009d30f2ccc340faa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac56732c3393fe64009d30f2ccc340faa">&#9670;&nbsp;</a></span>pw_resource_get_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT uint32_t pw_resource_get_id </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the unique id of this resource. </p>
+
+</div>
+</div>
+<a id="ab264bc9e31ca19a13128fd9a86a9a89c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab264bc9e31ca19a13128fd9a86a9a89c">&#9670;&nbsp;</a></span>pw_resource_get_marshal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT const struct <a class="el" href="structpw__protocol__marshal.html">pw_protocol_marshal</a>* pw_resource_get_marshal </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the marshal functions for the resource. </p>
+
+</div>
+</div>
+<a id="a9718aa335fbb9c1b8dfc605f05127078"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9718aa335fbb9c1b8dfc605f05127078">&#9670;&nbsp;</a></span>pw_resource_get_object_listeners()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct spa_hook_list* pw_resource_get_object_listeners </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the list of object listeners from a resource. </p>
+
+</div>
+</div>
+<a id="a0d95e95f9b243ccfb01d72a4b830b723"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d95e95f9b243ccfb01d72a4b830b723">&#9670;&nbsp;</a></span>pw_resource_get_permissions()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT uint32_t pw_resource_get_permissions </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the permissions of this resource. </p>
+
+</div>
+</div>
+<a id="ae7534e38e4825d07fe8330fa99f6fb62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7534e38e4825d07fe8330fa99f6fb62">&#9670;&nbsp;</a></span>pw_resource_get_protocol()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__protocol.html">pw_protocol</a>* pw_resource_get_protocol </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the protocol used for this resource. </p>
+
+</div>
+</div>
+<a id="a283b389151fc805f555058ec343434e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a283b389151fc805f555058ec343434e4">&#9670;&nbsp;</a></span>pw_resource_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT uint32_t pw_resource_get_type </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the type of this resource. </p>
+
+</div>
+</div>
+<a id="a8b8380e07403b42b322a2b0aaee65048"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8b8380e07403b42b322a2b0aaee65048">&#9670;&nbsp;</a></span>pw_resource_get_user_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT void* pw_resource_get_user_data </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the user data for the resource, the size was given in <a class="el" href="resource_8c.html#a13bc34ff7eecd313331ff6d95e8c95a5">pw_resource_new</a>. </p>
+
+</div>
+</div>
+<a id="a13bc34ff7eecd313331ff6d95e8c95a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13bc34ff7eecd313331ff6d95e8c95a5">&#9670;&nbsp;</a></span>pw_resource_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT struct <a class="el" href="classpw__resource.html">pw_resource</a>* pw_resource_new </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__client.html">pw_client</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint32_t&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint32_t&#160;</td>
+ <td class="paramname"><em>permissions</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint32_t&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint32_t&#160;</td>
+ <td class="paramname"><em>version</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>Make a new resource for client. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">client</td><td>the client owning the resource </td></tr>
+ <tr><td class="paramname">id</td><td>the remote per client id </td></tr>
+ <tr><td class="paramname">permissions</td><td>permissions on this resource </td></tr>
+ <tr><td class="paramname">type</td><td>interface of the resource </td></tr>
+ <tr><td class="paramname">version</td><td>requested interface version </td></tr>
+ <tr><td class="paramname">user_data_size</td><td>extra user data size </td></tr>
+ </table>
+ </dd>
+</dl>
+
+<p class="reference">References <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</a>, <a class="el" href="classpw__log.html#a995a5e0ef414e9246fbf2ad56b0ce281">pw_log::pw_log_error</a>, <a class="el" href="structpw__map.html#a10124711c6ab6ad3c1b9e6cab49dc4e4">pw_map::pw_map_insert_at()</a>, <a class="el" href="protocol_8h.html#a0dac7c46c3ffea078e00f23ba75edf80">pw_protocol_get_marshal()</a>, <a class="el" href="type_8h.html#a3e7088893438300a0ba3defeb6b344a1">pw_type_info()</a>, and <a class="el" href="structimpl.html#a6eaec9ea671abe6434946657ac2f1bae">impl::this</a>.</p>
+
+</div>
+</div>
+<a id="a51c7cc27c6480a9f90aa46f682f78fbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51c7cc27c6480a9f90aa46f682f78fbb">&#9670;&nbsp;</a></span>pw_resource_ping()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SPA_EXPORT int pw_resource_ping </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classpw__resource.html">pw_resource</a> *&#160;</td>
+ <td class="paramname"><em>resource</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>seq</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Generate an ping event for a resource. </p>
+<p>This will generate a pong event with the same <em>sequence</em> number in the return value. </p>
+
+<p class="reference">References <a class="el" href="classpw__log.html#a98a49c37f11de525890014e927e34d02">pw_log::pw_log_debug</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="resource_8c.html">resource.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>