~ubuntu-branches/ubuntu/precise/xorg-server/precise-updates

« back to all changes in this revision

Viewing changes to hw/dmx/doc/html/dmxprop_8c.html

Tags: 2:1.10.1-2
* Build xserver-xorg-core-udeb on hurd-i386.  Thanks, Samuel Thibault!
* Upload to unstable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
    <link href="doxygen.css" rel="stylesheet" type="text/css">
7
7
  </head>
8
8
  <body>
9
 
<!-- Generated by Doxygen 1.7.1 -->
10
 
<div class="navigation" id="top">
11
 
  <div class="tabs">
 
9
<!-- Generated by Doxygen 1.7.3 -->
 
10
  <div id="navrow1" class="tabs">
12
11
    <ul class="tablist">
13
 
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
14
 
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
 
12
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
 
13
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
15
14
      <li class="current"><a href="files.html"><span>Files</span></a></li>
16
15
    </ul>
17
16
  </div>
18
 
  <div class="tabs2">
 
17
  <div id="navrow2" class="tabs2">
19
18
    <ul class="tablist">
20
 
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
 
19
      <li><a href="files.html"><span>File&#160;List</span></a></li>
21
20
      <li><a href="globals.html"><span>Globals</span></a></li>
22
21
    </ul>
23
22
  </div>
24
23
</div>
 
24
<div id="side-nav" class="ui-resizable side-nav-resizable">
 
25
  <div id="nav-tree">
 
26
    <div id="nav-tree-contents">
 
27
    </div>
 
28
  </div>
 
29
  <div id="splitbar" style="-moz-user-select:none;" 
 
30
       class="ui-resizable-handle">
 
31
  </div>
 
32
</div>
 
33
<script type="text/javascript">
 
34
  initNavTree('dmxprop_8c.html','');
 
35
</script>
 
36
<div id="doc-content">
25
37
<div class="header">
26
38
  <div class="summary">
27
39
<a href="#define-members">Defines</a> &#124;
31
43
<h1>dmxprop.c File Reference</h1>  </div>
32
44
</div>
33
45
<div class="contents">
34
 
<code>#include &quot;<a class="el" href="dmx_8h_source.html">dmx.h</a>&quot;</code><br/>
 
46
<div class="textblock"><code>#include &quot;<a class="el" href="dmx_8h_source.html">dmx.h</a>&quot;</code><br/>
35
47
<code>#include &quot;<a class="el" href="dmxprop_8h_source.html">dmxprop.h</a>&quot;</code><br/>
36
48
<code>#include &quot;<a class="el" href="dmxlog_8h_source.html">dmxlog.h</a>&quot;</code><br/>
37
 
<table class="memberdecls">
 
49
</div><table class="memberdecls">
38
50
<tr><td colspan="2"><h2><a name="define-members"></a>
39
51
Defines</h2></td></tr>
40
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#aa5cb343dc33f4f7e12652ca1298a2ed8">DMX_ATOMNAME</a>&nbsp;&nbsp;&nbsp;&quot;DMX_NAME&quot;</td></tr>
41
 
<tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a15bb16a878f80c6c8a7aec68aadf3444">DMX_IDENT</a>&nbsp;&nbsp;&nbsp;&quot;Xdmx&quot;</td></tr>
 
52
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#aa5cb343dc33f4f7e12652ca1298a2ed8">DMX_ATOMNAME</a>&#160;&#160;&#160;&quot;DMX_NAME&quot;</td></tr>
 
53
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a15bb16a878f80c6c8a7aec68aadf3444">DMX_IDENT</a>&#160;&#160;&#160;&quot;Xdmx&quot;</td></tr>
42
54
<tr><td colspan="2"><h2><a name="func-members"></a>
43
55
Functions</h2></td></tr>
44
 
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a45eb0051c6d317735f2bf3b64ddc43e1">dmxPropertyErrorHandler</a> (Display *dpy, XErrorEvent *ev)</td></tr>
45
 
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a5393154b62783c7ff9cb657acbf73cca">dmxPropertyIdentifier</a> (void)</td></tr>
46
 
<tr><td class="memItemLeft" align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a1353800f90c3a1f46d453caa71a41ab6">dmxPropertyIterate</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *start, void *(*f)(<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, void *), void *closure)</td></tr>
47
 
<tr><td class="memItemLeft" align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#ab3eb5317487025c8ba44312f16d675f7">dmxPropertyCheckOtherServers</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, Atom atom)</td></tr>
48
 
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a5e976d40a4af5d6cd99b69ead01d0dfb">dmxPropertyCheckOtherWindows</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, Atom atom)</td></tr>
49
 
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a97a10defd6ace86dae6cf8c8765bf0de">dmxPropertyDisplay</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen)</td></tr>
50
 
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#ad0a551002589f00b2bac2b081283bc83">dmxPropertySameDisplay</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, const char *name)</td></tr>
51
 
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#aa97527eeaaf0744a67a5c5d188daf8c2">dmxPropertyWindow</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen)</td></tr>
 
56
<tr><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a45eb0051c6d317735f2bf3b64ddc43e1">dmxPropertyErrorHandler</a> (Display *dpy, XErrorEvent *ev)</td></tr>
 
57
<tr><td class="memItemLeft" align="right" valign="top">static const unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a5393154b62783c7ff9cb657acbf73cca">dmxPropertyIdentifier</a> (void)</td></tr>
 
58
<tr><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a1353800f90c3a1f46d453caa71a41ab6">dmxPropertyIterate</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *start, void *(*f)(<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, void *), void *closure)</td></tr>
 
59
<tr><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#ab3eb5317487025c8ba44312f16d675f7">dmxPropertyCheckOtherServers</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, Atom atom)</td></tr>
 
60
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a5e976d40a4af5d6cd99b69ead01d0dfb">dmxPropertyCheckOtherWindows</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, Atom atom)</td></tr>
 
61
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#a97a10defd6ace86dae6cf8c8765bf0de">dmxPropertyDisplay</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen)</td></tr>
 
62
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#ad0a551002589f00b2bac2b081283bc83">dmxPropertySameDisplay</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, const char *name)</td></tr>
 
63
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#aa97527eeaaf0744a67a5c5d188daf8c2">dmxPropertyWindow</a> (<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen)</td></tr>
52
64
<tr><td colspan="2"><h2><a name="var-members"></a>
53
65
Variables</h2></td></tr>
54
 
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a></td></tr>
 
66
<tr><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxprop_8c.html#ac49dfab9200d48f835ce64819c4fc878">display</a></td></tr>
55
67
</table>
56
68
<hr/><a name="_details"></a><h2>Detailed Description</h2>
57
 
<p>It is possible for one of the DMX "backend displays" to actually be smaller than the dimensions of the backend X server. Therefore, it is possible for more than one of the DMX "backend displays" to be physically located on the same backend X server. This situation must be detected so that cursor motion can be handled in an expected fashion.</p>
 
69
<div class="textblock"><p>It is possible for one of the DMX "backend displays" to actually be smaller than the dimensions of the backend X server. Therefore, it is possible for more than one of the DMX "backend displays" to be physically located on the same backend X server. This situation must be detected so that cursor motion can be handled in an expected fashion.</p>
58
70
<p>We could analyze the names used for the DMX "backend displays" (e.g., the names passed to the -display command-line parameter), but there are many possible names for a single X display, and failing to detect sameness leads to very unexpected results. Therefore, whenever the DMX server opens a window on a backend X server, a property value is queried and set on that backend to detect when another window is already open on that server.</p>
59
71
<p>Further, it is possible that two different DMX server instantiations both have windows on the same physical backend X server. This case is also detected so that pointer input is not taken from that particular backend X server.</p>
60
72
<p>The routines in this file handle the property management. </p>
61
 
<hr/><h2>Define Documentation</h2>
 
73
</div><hr/><h2>Define Documentation</h2>
62
74
<a class="anchor" id="aa5cb343dc33f4f7e12652ca1298a2ed8"></a><!-- doxytag: member="dmxprop.c::DMX_ATOMNAME" ref="aa5cb343dc33f4f7e12652ca1298a2ed8" args="" -->
63
75
<div class="memitem">
64
76
<div class="memproto">
65
77
      <table class="memname">
66
78
        <tr>
67
 
          <td class="memname">#define DMX_ATOMNAME&nbsp;&nbsp;&nbsp;&quot;DMX_NAME&quot;</td>
 
79
          <td class="memname">#define DMX_ATOMNAME&#160;&#160;&#160;&quot;DMX_NAME&quot;</td>
68
80
        </tr>
69
81
      </table>
70
82
</div>
80
92
<div class="memproto">
81
93
      <table class="memname">
82
94
        <tr>
83
 
          <td class="memname">#define DMX_IDENT&nbsp;&nbsp;&nbsp;&quot;Xdmx&quot;</td>
 
95
          <td class="memname">#define DMX_IDENT&#160;&#160;&#160;&quot;Xdmx&quot;</td>
84
96
        </tr>
85
97
      </table>
86
98
</div>
99
111
        <tr>
100
112
          <td class="memname">static int dmxPropertyCheckOtherServers </td>
101
113
          <td>(</td>
102
 
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td>
103
 
          <td class="paramname"> <em>dmxScreen</em>, </td>
 
114
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
 
115
          <td class="paramname"><em>dmxScreen</em>, </td>
104
116
        </tr>
105
117
        <tr>
106
118
          <td class="paramkey"></td>
107
119
          <td></td>
108
 
          <td class="paramtype">Atom&nbsp;</td>
109
 
          <td class="paramname"> <em>atom</em></td><td>&nbsp;</td>
 
120
          <td class="paramtype">Atom&#160;</td>
 
121
          <td class="paramname"><em>atom</em>&#160;</td>
110
122
        </tr>
111
123
        <tr>
112
124
          <td></td>
113
125
          <td>)</td>
114
 
          <td></td><td></td><td><code> [static]</code></td>
 
126
          <td></td><td><code> [static]</code></td>
115
127
        </tr>
116
128
      </table>
117
129
</div>
131
143
        <tr>
132
144
          <td class="memname">static <a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a>* dmxPropertyCheckOtherWindows </td>
133
145
          <td>(</td>
134
 
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td>
135
 
          <td class="paramname"> <em>dmxScreen</em>, </td>
 
146
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
 
147
          <td class="paramname"><em>dmxScreen</em>, </td>
136
148
        </tr>
137
149
        <tr>
138
150
          <td class="paramkey"></td>
139
151
          <td></td>
140
 
          <td class="paramtype">Atom&nbsp;</td>
141
 
          <td class="paramname"> <em>atom</em></td><td>&nbsp;</td>
 
152
          <td class="paramtype">Atom&#160;</td>
 
153
          <td class="paramname"><em>atom</em>&#160;</td>
142
154
        </tr>
143
155
        <tr>
144
156
          <td></td>
145
157
          <td>)</td>
146
 
          <td></td><td></td><td><code> [static]</code></td>
 
158
          <td></td><td><code> [static]</code></td>
147
159
        </tr>
148
160
      </table>
149
161
</div>
163
175
        <tr>
164
176
          <td class="memname">int dmxPropertyDisplay </td>
165
177
          <td>(</td>
166
 
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td>
167
 
          <td class="paramname"> <em>dmxScreen</em></td>
168
 
          <td>&nbsp;)&nbsp;</td>
 
178
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
 
179
          <td class="paramname"><em>dmxScreen</em></td><td>)</td>
169
180
          <td></td>
170
181
        </tr>
171
182
      </table>
186
197
        <tr>
187
198
          <td class="memname">static int dmxPropertyErrorHandler </td>
188
199
          <td>(</td>
189
 
          <td class="paramtype">Display *&nbsp;</td>
190
 
          <td class="paramname"> <em>dpy</em>, </td>
 
200
          <td class="paramtype">Display *&#160;</td>
 
201
          <td class="paramname"><em>dpy</em>, </td>
191
202
        </tr>
192
203
        <tr>
193
204
          <td class="paramkey"></td>
194
205
          <td></td>
195
 
          <td class="paramtype">XErrorEvent *&nbsp;</td>
196
 
          <td class="paramname"> <em>ev</em></td><td>&nbsp;</td>
 
206
          <td class="paramtype">XErrorEvent *&#160;</td>
 
207
          <td class="paramname"><em>ev</em>&#160;</td>
197
208
        </tr>
198
209
        <tr>
199
210
          <td></td>
200
211
          <td>)</td>
201
 
          <td></td><td></td><td><code> [static]</code></td>
 
212
          <td></td><td><code> [static]</code></td>
202
213
        </tr>
203
214
      </table>
204
215
</div>
215
226
        <tr>
216
227
          <td class="memname">static const unsigned char* dmxPropertyIdentifier </td>
217
228
          <td>(</td>
218
 
          <td class="paramtype">void&nbsp;</td>
219
 
          <td class="paramname"></td>
220
 
          <td>&nbsp;)&nbsp;</td>
 
229
          <td class="paramtype">void&#160;</td>
 
230
          <td class="paramname"></td><td>)</td>
221
231
          <td><code> [static]</code></td>
222
232
        </tr>
223
233
      </table>
237
247
        <tr>
238
248
          <td class="memname">void* dmxPropertyIterate </td>
239
249
          <td>(</td>
240
 
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td>
241
 
          <td class="paramname"> <em>start</em>, </td>
242
 
        </tr>
243
 
        <tr>
244
 
          <td class="paramkey"></td>
245
 
          <td></td>
246
 
          <td class="paramtype">void *(*)(<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, void *)&nbsp;</td>
247
 
          <td class="paramname"> <em>f</em>, </td>
248
 
        </tr>
249
 
        <tr>
250
 
          <td class="paramkey"></td>
251
 
          <td></td>
252
 
          <td class="paramtype">void *&nbsp;</td>
253
 
          <td class="paramname"> <em>closure</em></td><td>&nbsp;</td>
 
250
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
 
251
          <td class="paramname"><em>start</em>, </td>
 
252
        </tr>
 
253
        <tr>
 
254
          <td class="paramkey"></td>
 
255
          <td></td>
 
256
          <td class="paramtype">void *(*)(<a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *dmxScreen, void *)&#160;</td>
 
257
          <td class="paramname"><em>f</em>, </td>
 
258
        </tr>
 
259
        <tr>
 
260
          <td class="paramkey"></td>
 
261
          <td></td>
 
262
          <td class="paramtype">void *&#160;</td>
 
263
          <td class="paramname"><em>closure</em>&#160;</td>
254
264
        </tr>
255
265
        <tr>
256
266
          <td></td>
257
267
          <td>)</td>
258
 
          <td></td><td></td><td></td>
 
268
          <td></td><td></td>
259
269
        </tr>
260
270
      </table>
261
271
</div>
275
285
        <tr>
276
286
          <td class="memname">int dmxPropertySameDisplay </td>
277
287
          <td>(</td>
278
 
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td>
279
 
          <td class="paramname"> <em>dmxScreen</em>, </td>
 
288
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
 
289
          <td class="paramname"><em>dmxScreen</em>, </td>
280
290
        </tr>
281
291
        <tr>
282
292
          <td class="paramkey"></td>
283
293
          <td></td>
284
 
          <td class="paramtype">const char *&nbsp;</td>
285
 
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
 
294
          <td class="paramtype">const char *&#160;</td>
 
295
          <td class="paramname"><em>name</em>&#160;</td>
286
296
        </tr>
287
297
        <tr>
288
298
          <td></td>
289
299
          <td>)</td>
290
 
          <td></td><td></td><td></td>
 
300
          <td></td><td></td>
291
301
        </tr>
292
302
      </table>
293
303
</div>
307
317
        <tr>
308
318
          <td class="memname">void dmxPropertyWindow </td>
309
319
          <td>(</td>
310
 
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&nbsp;</td>
311
 
          <td class="paramname"> <em>dmxScreen</em></td>
312
 
          <td>&nbsp;)&nbsp;</td>
 
320
          <td class="paramtype"><a class="el" href="struct__DMXScreenInfo.html">DMXScreenInfo</a> *&#160;</td>
 
321
          <td class="paramname"><em>dmxScreen</em></td><td>)</td>
313
322
          <td></td>
314
323
        </tr>
315
324
      </table>
343
352
</div>
344
353
</div>
345
354
</div>
 
355
</div>
 
356
  <div id="nav-path" class="navpath">
 
357
    <ul>
 
358
      <li class="navelem"><a class="el" href="dmxprop_8c.html">dmxprop.c</a>      </li>
346
359
    <hr>
347
360
    <address>
348
361
      <small>