1 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
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">
9 <!-- Generated by Doxygen 1.3.4 -->
10 <div class=
"qindex"><a class=
"qindex" href=
"main.html">Main
Page
</a> |
<a class=
"qindex" href=
"classes.html">Alphabetical
List
</a> |
<a class=
"qindex" href=
"annotated.html">Data
Structures
</a> |
<a class=
"qindex" href=
"files.html">File
List
</a> |
<a class=
"qindex" href=
"functions.html">Data
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>
39 00029 <span class=
"comment">/*
</span>
40 00030 <span class=
"comment"> * Authors:
</span>
41 00031 <span class=
"comment"> * Rickard E. (Rik) Faith
<faith@redhat.com
></span>
42 00032 <span class=
"comment"> *
</span>
43 00033 <span class=
"comment"> */
</span>
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<<0)
</span>
55 00050 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXScreenWindowHeight (
1L<<1)
</span>
56 00051 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXScreenWindowXoffset (
1L<<2)
</span>
57 00052 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXScreenWindowYoffset (
1L<<3)
</span>
58 00053 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXRootWindowWidth (
1L<<4)
</span>
59 00054 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXRootWindowHeight (
1L<<5)
</span>
60 00055 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXRootWindowXoffset (
1L<<6)
</span>
61 00056 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXRootWindowYoffset (
1L<<7)
</span>
62 00057 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXRootWindowXorigin (
1L<<8)
</span>
63 00058 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXRootWindowYorigin (
1L<<9)
</span>
64 00059 <span class=
"preprocessor"></span>
65 00060 <span class=
"preprocessor">#define DMXDesktopWidth (
1L<<0)
</span>
66 00061 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXDesktopHeight (
1L<<1)
</span>
67 00062 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXDesktopShiftX (
1L<<2)
</span>
68 00063 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXDesktopShiftY (
1L<<3)
</span>
69 00064 <span class=
"preprocessor"></span>
70 00065 <span class=
"preprocessor">#define DMXInputType (
1L<<0)
</span>
71 00066 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXInputPhysicalScreen (
1L<<1)
</span>
72 00067 <span class=
"preprocessor"></span><span class=
"preprocessor">#define DMXInputSendsCore (
1L<<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;
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>
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>
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>;
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;
97 00096 XRectangle pos, vis;
98 00097 }
<a class=
"code" href=
"structDMXWindowAttributes.html">DMXWindowAttributes
</a>;
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>;
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>;
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;
118 00123 Bool sendsCore;
119 00124 <span class=
"keyword">const
</span> <span class=
"keywordtype">char
</span> *name;
121 00126 }
<a class=
"code" href=
"structDMXInputAttributes.html">DMXInputAttributes
</a>;
123 00128 _XFUNCPROTOBEGIN
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);
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);
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);
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);
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);
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);
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);
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);
184 00189 <span class=
"preprocessor">#endif
</span>
185 00190 <span class=
"preprocessor"></span><span class=
"preprocessor">#endif
</span>
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>