/usr/share/gtk-doc/html/libmatewnck/libmatewnck-Resource-Usage-of-X-Clients.html is in libmatewnck-doc 1.6.1-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Resource Usage of X Clients</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="Libmatewnck Reference Manual">
<link rel="up" href="utils.html" title="Part IV. Libmatewnck Utilities">
<link rel="prev" href="utils.html" title="Part IV. Libmatewnck Utilities">
<link rel="next" href="libmatewnck-Miscellaneous-Functions.html" title="Miscellaneous Functions">
<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="utils.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="utils.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">Libmatewnck Reference Manual</th>
<td><a accesskey="n" href="libmatewnck-Miscellaneous-Functions.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#libmatewnck-Resource-Usage-of-X-Clients.synopsis" class="shortcut">Top</a>
|
<a href="#libmatewnck-Resource-Usage-of-X-Clients.description" class="shortcut">Description</a>
</td></tr>
</table>
<div class="refentry">
<a name="libmatewnck-Resource-Usage-of-X-Clients"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="libmatewnck-Resource-Usage-of-X-Clients.top_of_page"></a>Resource Usage of X Clients</span></h2>
<p>Resource Usage of X Clients — reading resource usage of X clients.</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="libmatewnck-Resource-Usage-of-X-Clients.stability-level"></a><h2>Stability Level</h2>
Unstable, unless otherwise indicated
</div>
<div class="refsynopsisdiv">
<a name="libmatewnck-Resource-Usage-of-X-Clients.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include <libmatewnck/libmatewnck.h>
struct <a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#MatewnckResourceUsage" title="struct MatewnckResourceUsage">MatewnckResourceUsage</a>;
<span class="returnvalue">void</span> <a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#matewnck-xid-read-resource-usage" title="matewnck_xid_read_resource_usage ()">matewnck_xid_read_resource_usage</a> (<em class="parameter"><code><span class="type">GdkDisplay</span> *gdk_display</code></em>,
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> xid</code></em>,
<em class="parameter"><code><a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#MatewnckResourceUsage" title="struct MatewnckResourceUsage"><span class="type">MatewnckResourceUsage</span></a> *usage</code></em>);
<span class="returnvalue">void</span> <a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#matewnck-pid-read-resource-usage" title="matewnck_pid_read_resource_usage ()">matewnck_pid_read_resource_usage</a> (<em class="parameter"><code><span class="type">GdkDisplay</span> *gdk_display</code></em>,
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> pid</code></em>,
<em class="parameter"><code><a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#MatewnckResourceUsage" title="struct MatewnckResourceUsage"><span class="type">MatewnckResourceUsage</span></a> *usage</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="libmatewnck-Resource-Usage-of-X-Clients.description"></a><h2>Description</h2>
<p>
libmatewnck provides an easy-to-use interface to the XRes X server extension to
read resource usage of X clients, which can be defined either by the X
window ID of one of their windows or by the process ID of their process.
</p>
</div>
<div class="refsect1">
<a name="libmatewnck-Resource-Usage-of-X-Clients.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="MatewnckResourceUsage"></a><h3>struct MatewnckResourceUsage</h3>
<pre class="programlisting">struct MatewnckResourceUsage {
gulong total_bytes_estimate;
gulong pixmap_bytes;
unsigned int n_pixmaps;
unsigned int n_windows;
unsigned int n_gcs;
unsigned int n_pictures;
unsigned int n_glyphsets;
unsigned int n_fonts;
unsigned int n_colormap_entries;
unsigned int n_passive_grabs;
unsigned int n_cursors;
unsigned int n_other;
};
</pre>
<p>
The <a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#MatewnckResourceUsage" title="struct MatewnckResourceUsage"><span class="type">MatewnckResourceUsage</span></a> struct contains information about the total resource
usage of an X client, and the number of resources allocated for each
resource type.
</p>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> <em class="structfield"><code><a name="MatewnckResourceUsage.total-bytes-estimate"></a>total_bytes_estimate</code></em>;</span></p></td>
<td>estimation of the total number of bytes allocated in
the X server.</td>
</tr>
<tr>
<td><p><span class="term"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> <em class="structfield"><code><a name="MatewnckResourceUsage.pixmap-bytes"></a>pixmap_bytes</code></em>;</span></p></td>
<td>number of bytes allocated in the X server for resources of
type Pixmap.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-pixmaps"></a>n_pixmaps</code></em>;</span></p></td>
<td>number of Pixmap resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-windows"></a>n_windows</code></em>;</span></p></td>
<td>number of Window resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-gcs"></a>n_gcs</code></em>;</span></p></td>
<td>number of GContext resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-pictures"></a>n_pictures</code></em>;</span></p></td>
<td>number of Picture resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-glyphsets"></a>n_glyphsets</code></em>;</span></p></td>
<td>number of Glyphset resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-fonts"></a>n_fonts</code></em>;</span></p></td>
<td>number of Font resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-colormap-entries"></a>n_colormap_entries</code></em>;</span></p></td>
<td>number of Colormap resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-passive-grabs"></a>n_passive_grabs</code></em>;</span></p></td>
<td>number of PassiveGrab resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-cursors"></a>n_cursors</code></em>;</span></p></td>
<td>number of Cursor resources allocated.</td>
</tr>
<tr>
<td><p><span class="term">unsigned <span class="type">int</span> <em class="structfield"><code><a name="MatewnckResourceUsage.n-other"></a>n_other</code></em>;</span></p></td>
<td>number of other resources allocated.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.6</p>
</div>
<hr>
<div class="refsect2">
<a name="matewnck-xid-read-resource-usage"></a><h3>matewnck_xid_read_resource_usage ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> matewnck_xid_read_resource_usage (<em class="parameter"><code><span class="type">GdkDisplay</span> *gdk_display</code></em>,
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> xid</code></em>,
<em class="parameter"><code><a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#MatewnckResourceUsage" title="struct MatewnckResourceUsage"><span class="type">MatewnckResourceUsage</span></a> *usage</code></em>);</pre>
<p>
Looks for the X resource usage of the application owning the X window ID
<em class="parameter"><code>xid</code></em> on display <em class="parameter"><code>gdisplay</code></em>. If no resource usage can be found, then all
fields of <em class="parameter"><code>usage</code></em> are set to 0.
</p>
<p>
To properly work, this function requires the XRes extension on the X server.
</p>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>gdk_display</code></em> :</span></p></td>
<td>a <code class="classname">GdkDisplay</code>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>xid</code></em> :</span></p></td>
<td>an X window ID.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>usage</code></em> :</span></p></td>
<td>return location for the X resource usage of the application owning
the X window ID <em class="parameter"><code>xid</code></em>.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.6</p>
</div>
<hr>
<div class="refsect2">
<a name="matewnck-pid-read-resource-usage"></a><h3>matewnck_pid_read_resource_usage ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> matewnck_pid_read_resource_usage (<em class="parameter"><code><span class="type">GdkDisplay</span> *gdk_display</code></em>,
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gulong"><span class="type">gulong</span></a> pid</code></em>,
<em class="parameter"><code><a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#MatewnckResourceUsage" title="struct MatewnckResourceUsage"><span class="type">MatewnckResourceUsage</span></a> *usage</code></em>);</pre>
<p>
Looks for the X resource usage of the application with process ID <em class="parameter"><code>pid</code></em> on
display <em class="parameter"><code>gdisplay</code></em>. If no resource usage can be found, then all fields of
<em class="parameter"><code>usage</code></em> are set to 0.
</p>
<p>
In order to find the resource usage of an application that does not have an
X window visible to libmatewnck (panel applets do not have any toplevel windows,
for example), <a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#matewnck-pid-read-resource-usage" title="matewnck_pid_read_resource_usage ()"><code class="function">matewnck_pid_read_resource_usage()</code></a> walks through the whole tree of
X windows. Since this walk is expensive in CPU, a cache is created. This
cache is updated in the background. This means there is a non-null
probability that no resource usage will be found for an application, even if
it is an X client. If this happens, calling <a class="link" href="libmatewnck-Resource-Usage-of-X-Clients.html#matewnck-pid-read-resource-usage" title="matewnck_pid_read_resource_usage ()"><code class="function">matewnck_pid_read_resource_usage()</code></a>
again after a few seconds should work.
</p>
<p>
To properly work, this function requires the XRes extension on the X server.
</p>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>gdk_display</code></em> :</span></p></td>
<td>a <code class="classname">GdkDisplay</code>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>pid</code></em> :</span></p></td>
<td>a process ID.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>usage</code></em> :</span></p></td>
<td>return location for the X resource usage of the application with
process ID <em class="parameter"><code>pid</code></em>.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.6</p>
</div>
</div>
<div class="refsect1">
<a name="libmatewnck-Resource-Usage-of-X-Clients.see-also"></a><h2>See Also</h2>
matewnck_window_get_xid(), <a class="link" href="MatewnckApplication.html#matewnck-application-get-xid" title="matewnck_application_get_xid ()"><code class="function">matewnck_application_get_xid()</code></a>, <a class="link" href="MatewnckWindow.html#matewnck-window-get-pid" title="matewnck_window_get_pid ()"><code class="function">matewnck_window_get_pid()</code></a>, <a class="link" href="MatewnckApplication.html#matewnck-application-get-pid" title="matewnck_application_get_pid ()"><code class="function">matewnck_application_get_pid()</code></a>
</div>
</div>
<div class="footer">
<hr>
Generated by GTK-Doc V1.19</div>
</body>
</html>
|