First import
[xorg_rtime.git] / xorg-server-1.4 / hw / dmx / doc / html / dmxext_8h-source.html
blobe18f0f7851bb843836334473dfa21fdf5704ab38
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
5 <title>File Index</title>
6 <link href="doxygen.css" rel="stylesheet" type="text/css">
7 </head>
8 <body>
9 <!-- Generated by Doxygen 1.3.4 -->
10 <div class="qindex"><a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a></div>
11 <h1>dmxext.h</h1><a href="dmxext_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/* $XFree86$ */</span>
12 00002 <span class="comment">/*</span>
13 00003 <span class="comment"> * Copyright 2002-2004 Red Hat Inc., Durham, North Carolina.</span>
14 00004 <span class="comment"> *</span>
15 00005 <span class="comment"> * All Rights Reserved.</span>
16 00006 <span class="comment"> *</span>
17 00007 <span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining</span>
18 00008 <span class="comment"> * a copy of this software and associated documentation files (the</span>
19 00009 <span class="comment"> * "Software"), to deal in the Software without restriction, including</span>
20 00010 <span class="comment"> * without limitation on the rights to use, copy, modify, merge,</span>
21 00011 <span class="comment"> * publish, distribute, sublicense, and/or sell copies of the Software,</span>
22 00012 <span class="comment"> * and to permit persons to whom the Software is furnished to do so,</span>
23 00013 <span class="comment"> * subject to the following conditions:</span>
24 00014 <span class="comment"> *</span>
25 00015 <span class="comment"> * The above copyright notice and this permission notice (including the</span>
26 00016 <span class="comment"> * next paragraph) shall be included in all copies or substantial</span>
27 00017 <span class="comment"> * portions of the Software.</span>
28 00018 <span class="comment"> *</span>
29 00019 <span class="comment"> * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,</span>
30 00020 <span class="comment"> * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF</span>
31 00021 <span class="comment"> * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND</span>
32 00022 <span class="comment"> * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS</span>
33 00023 <span class="comment"> * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN</span>
34 00024 <span class="comment"> * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN</span>
35 00025 <span class="comment"> * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE</span>
36 00026 <span class="comment"> * SOFTWARE.</span>
37 00027 <span class="comment"> */</span>
38 00028
39 00029 <span class="comment">/*</span>
40 00030 <span class="comment"> * Authors:</span>
41 00031 <span class="comment"> * Rickard E. (Rik) Faith &lt;faith@redhat.com&gt;</span>
42 00032 <span class="comment"> *</span>
43 00033 <span class="comment"> */</span>
44 00034
45 00040 <span class="preprocessor">#ifndef _DMXEXT_H_</span>
46 00041 <span class="preprocessor"></span><span class="preprocessor">#define _DMXEXT_H_</span>
47 00042 <span class="preprocessor"></span>
48 00043 <span class="comment">/* These values must be larger than LastExtensionError.</span>
49 00044 <span class="comment"> The values in dmxext.h and dmxproto.h *MUST* match. */</span>
50 00045 <span class="preprocessor">#define DmxBadXinerama 1001</span>
51 00046 <span class="preprocessor"></span><span class="preprocessor">#define DmxBadValue 1002</span>
52 00047 <span class="preprocessor"></span><span class="preprocessor">#define DmxBadReply 1003</span>
53 00048 <span class="preprocessor"></span>
54 00049 <span class="preprocessor">#define DMXScreenWindowWidth (1L&lt;&lt;0)</span>
55 00050 <span class="preprocessor"></span><span class="preprocessor">#define DMXScreenWindowHeight (1L&lt;&lt;1)</span>
56 00051 <span class="preprocessor"></span><span class="preprocessor">#define DMXScreenWindowXoffset (1L&lt;&lt;2)</span>
57 00052 <span class="preprocessor"></span><span class="preprocessor">#define DMXScreenWindowYoffset (1L&lt;&lt;3)</span>
58 00053 <span class="preprocessor"></span><span class="preprocessor">#define DMXRootWindowWidth (1L&lt;&lt;4)</span>
59 00054 <span class="preprocessor"></span><span class="preprocessor">#define DMXRootWindowHeight (1L&lt;&lt;5)</span>
60 00055 <span class="preprocessor"></span><span class="preprocessor">#define DMXRootWindowXoffset (1L&lt;&lt;6)</span>
61 00056 <span class="preprocessor"></span><span class="preprocessor">#define DMXRootWindowYoffset (1L&lt;&lt;7)</span>
62 00057 <span class="preprocessor"></span><span class="preprocessor">#define DMXRootWindowXorigin (1L&lt;&lt;8)</span>
63 00058 <span class="preprocessor"></span><span class="preprocessor">#define DMXRootWindowYorigin (1L&lt;&lt;9)</span>
64 00059 <span class="preprocessor"></span>
65 00060 <span class="preprocessor">#define DMXDesktopWidth (1L&lt;&lt;0)</span>
66 00061 <span class="preprocessor"></span><span class="preprocessor">#define DMXDesktopHeight (1L&lt;&lt;1)</span>
67 00062 <span class="preprocessor"></span><span class="preprocessor">#define DMXDesktopShiftX (1L&lt;&lt;2)</span>
68 00063 <span class="preprocessor"></span><span class="preprocessor">#define DMXDesktopShiftY (1L&lt;&lt;3)</span>
69 00064 <span class="preprocessor"></span>
70 00065 <span class="preprocessor">#define DMXInputType (1L&lt;&lt;0)</span>
71 00066 <span class="preprocessor"></span><span class="preprocessor">#define DMXInputPhysicalScreen (1L&lt;&lt;1)</span>
72 00067 <span class="preprocessor"></span><span class="preprocessor">#define DMXInputSendsCore (1L&lt;&lt;2)</span>
73 00068 <span class="preprocessor"></span>
74 00069 <span class="preprocessor">#ifndef _DMX_SERVER_</span>
75 00070 <span class="preprocessor"></span>
76 <a name="l00073"></a><a class="code" href="structDMXScreenAttributes.html">00073</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
77 00074 <span class="keywordtype">char</span> *displayName;
78 00075 <span class="keywordtype">int</span> logicalScreen;
79 00076
80 00077 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> screenWindowWidth; <span class="comment">/* displayName's coordinate system */</span>
81 00078 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> screenWindowHeight; <span class="comment">/* displayName's coordinate system */</span>
82 00079 <span class="keywordtype">int</span> screenWindowXoffset; <span class="comment">/* displayName's coordinate system */</span>
83 00080 <span class="keywordtype">int</span> screenWindowYoffset; <span class="comment">/* displayName's coordinate system */</span>
84 00081
85 00082 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> rootWindowWidth; <span class="comment">/* screenWindow's coordinate system */</span>
86 00083 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> rootWindowHeight; <span class="comment">/* screenWindow's coordinate system */</span>
87 00084 <span class="keywordtype">int</span> rootWindowXoffset; <span class="comment">/* screenWindow's coordinate system */</span>
88 00085 <span class="keywordtype">int</span> rootWindowYoffset; <span class="comment">/* screenWindow's coordinate system */</span>
89 00086
90 00087 <span class="keywordtype">int</span> rootWindowXorigin; <span class="comment">/* global coordinate system */</span>
91 00088 <span class="keywordtype">int</span> rootWindowYorigin; <span class="comment">/* global coordinate system */</span>
92 00089 } <a class="code" href="structDMXScreenAttributes.html">DMXScreenAttributes</a>;
93 00090
94 <a name="l00093"></a><a class="code" href="structDMXWindowAttributes.html">00093</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
95 00094 <span class="keywordtype">int</span> screen;
96 00095 Window window;
97 00096 XRectangle pos, vis;
98 00097 } <a class="code" href="structDMXWindowAttributes.html">DMXWindowAttributes</a>;
99 00098
100 <a name="l00101"></a><a class="code" href="structDMXDesktopAttributes.html">00101</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
101 00102 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> width; <span class="comment">/* global coordinate system */</span>
102 00103 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> height; <span class="comment">/* global coordinate system */</span>
103 00104 <span class="keywordtype">int</span> shiftX; <span class="comment">/* global coordinate system */</span>
104 00105 <span class="keywordtype">int</span> shiftY; <span class="comment">/* global coordinate system */</span>
105 00106 } <a class="code" href="structDMXDesktopAttributes.html">DMXDesktopAttributes</a>;
106 00107
107 <a name="l00110"></a><a class="code" href="dmxext_8h.html#a41">00110</a> <span class="keyword">typedef</span> <span class="keyword">enum</span> {
108 00111 DMXLocalInputType,
109 00112 DMXConsoleInputType,
110 00113 DMXBackendInputType
111 00114 } <a class="code" href="dmxext_8h.html#a41">DMXInputEnum</a>;
112 00115
113 <a name="l00118"></a><a class="code" href="structDMXInputAttributes.html">00118</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
114 00119 <a class="code" href="dmxext_8h.html#a41">DMXInputEnum</a> inputType;
115 00120 <span class="keywordtype">int</span> physicalScreen;
116 00121 <span class="keywordtype">int</span> physicalId;
117 00122 Bool isCore;
118 00123 Bool sendsCore;
119 00124 <span class="keyword">const</span> <span class="keywordtype">char</span> *name;
120 00125 Bool detached;
121 00126 } <a class="code" href="structDMXInputAttributes.html">DMXInputAttributes</a>;
122 00127
123 00128 _XFUNCPROTOBEGIN
124 00129
125 00130 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a10">DMXQueryExtension</a>(Display *dpy,
126 00131 <span class="keywordtype">int</span> *event_basep, <span class="keywordtype">int</span> *error_basep);
127 00132 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a11">DMXQueryVersion</a>(Display *dpy, <span class="keywordtype">int</span> *major_version,
128 00133 <span class="keywordtype">int</span> *minor_version, <span class="keywordtype">int</span> *patch_version);
129 00134 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a12">DMXSync</a>(Display *dpy);
130 00135 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a13">DMXForceWindowCreation</a>(Display *dpy, Window window);
131 00136
132 00137
133 00138 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a14">DMXGetScreenCount</a>(Display *dpy, <span class="keywordtype">int</span> *screen_count);
134 00139 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a15">DMXGetScreenAttributes</a>(Display *dpy,
135 00140 <span class="keywordtype">int</span> screen,
136 00141 <a class="code" href="structDMXScreenAttributes.html">DMXScreenAttributes</a> *attr);
137 00142 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="lib_2dmx_2dmx_8c.html#a20">DMXChangeScreensAttributes</a>(Display *dpy,
138 00143 <span class="keywordtype">int</span> screen_count,
139 00144 <span class="keywordtype">int</span> *screens,
140 00145 <span class="keywordtype">int</span> mask_count,
141 00146 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> *masks,
142 00147 <a class="code" href="structDMXScreenAttributes.html">DMXScreenAttributes</a> *attr, <span class="comment">/* vector */</span>
143 00148 <span class="keywordtype">int</span> *error_screen);
144 00149
145 00150 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a21">DMXAddScreen</a>(Display *dpy,
146 00151 <span class="keyword">const</span> <span class="keywordtype">char</span> *displayName,
147 00152 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask,
148 00153 <a class="code" href="structDMXScreenAttributes.html">DMXScreenAttributes</a> *attr,
149 00154 <span class="keywordtype">int</span> *screen);
150 00155 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a22">DMXRemoveScreen</a>(Display *dpy, <span class="keywordtype">int</span> screen);
151 00156
152 00157 <span class="comment">/* Call DMXGetScreenWindowCount and allocate info to that size. Pass</span>
153 00158 <span class="comment"> * the size in available_count. This call can generate a large amount</span>
154 00159 <span class="comment"> * of wire traffic and should not be used called with available_count=0</span>
155 00160 <span class="comment"> * just to determine the screen_count value -- use DMXGetScreenCount</span>
156 00161 <span class="comment"> * instead. NOTE: Also see DMX protocol specification (DMXSpec.txt) for</span>
157 00162 <span class="comment"> * usage of DMXSync to flush pending commands. */</span>
158 00163 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a23">DMXGetWindowAttributes</a>(Display *dpy, Window window,
159 00164 <span class="keywordtype">int</span> *screen_count, <span class="keywordtype">int</span> available_count,
160 00165 <a class="code" href="structDMXWindowAttributes.html">DMXWindowAttributes</a> *attr);
161 00166
162 00167 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a24">DMXGetDesktopAttributes</a>(Display *dpy, <a class="code" href="structDMXDesktopAttributes.html">DMXDesktopAttributes</a> *attr);
163 00168 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="lib_2dmx_2dmx_8c.html#a27">DMXChangeDesktopAttributes</a>(Display *dpy,
164 00169 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask,
165 00170 <a class="code" href="structDMXDesktopAttributes.html">DMXDesktopAttributes</a> *attr);
166 00171
167 00172 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a28">DMXGetInputCount</a>(Display *dpy, <span class="keywordtype">int</span> *input_count);
168 00173 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a29">DMXGetInputAttributes</a>(Display *dpy, <span class="keywordtype">int</span> id,
169 00174 <a class="code" href="structDMXInputAttributes.html">DMXInputAttributes</a> *attr);
170 00175
171 00176 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a30">DMXAddInput</a>(Display *dpy,
172 00177 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask,
173 00178 <a class="code" href="structDMXInputAttributes.html">DMXInputAttributes</a> *attr,
174 00179 <span class="keywordtype">int</span> *id);
175 00180 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a33">DMXRemoveInput</a>(Display *dpy, <span class="keywordtype">int</span> id);
176 00181
177 00182 <span class="comment">/* These are helper functions that call DMXAddInput. */</span>
178 00183 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a31">DMXAddBackendInput</a>(Display *dpy, <span class="keywordtype">int</span> screen, <span class="keywordtype">int</span> sendsCore,
179 00184 <span class="keywordtype">int</span> *newId);
180 00185 <span class="keyword">extern</span> Bool <a class="code" href="lib_2dmx_2dmx_8c.html#a32">DMXAddConsoleInput</a>(Display *dpy, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keywordtype">int</span> sendsCore,
181 00186 <span class="keywordtype">int</span> *newId);
182 00187
183 00188 _XFUNCPROTOEND
184 00189 <span class="preprocessor">#endif</span>
185 00190 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
186 </pre></div> <hr>
187 <address>
188 <small>
189 Generated June 29, 2004 for <a
190 href="http://dmx.sourceforge.net">Distributed Multihead X</a> by
191 <a href="http://www.doxygen.org/index.html">doxygen</a>
192 1.3.4.
193 </small>
194 </addres>
195 </hr>
196 </body>
197 </html>