1 | /*
|
---|
2 | Copyright 1996, 1998, 2001 The Open Group
|
---|
3 |
|
---|
4 | Permission to use, copy, modify, distribute, and sell this software and its
|
---|
5 | documentation for any purpose is hereby granted without fee, provided that
|
---|
6 | the above copyright notice appear in all copies and that both that
|
---|
7 | copyright notice and this permission notice appear in supporting
|
---|
8 | documentation.
|
---|
9 |
|
---|
10 | The above copyright notice and this permission notice shall be included
|
---|
11 | in all copies or substantial portions of the Software.
|
---|
12 |
|
---|
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
---|
14 | OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
---|
15 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
---|
16 | IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
---|
17 | OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
---|
18 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
---|
19 | OTHER DEALINGS IN THE SOFTWARE.
|
---|
20 |
|
---|
21 | Except as contained in this notice, the name of The Open Group shall
|
---|
22 | not be used in advertising or otherwise to promote the sale, use or
|
---|
23 | other dealings in this Software without prior written authorization
|
---|
24 | from The Open Group.
|
---|
25 | */
|
---|
26 |
|
---|
27 | #ifndef _AGPROTO_H_ /* { */
|
---|
28 | #define _AGPROTO_H_
|
---|
29 |
|
---|
30 | #include <X11/extensions/ag.h>
|
---|
31 |
|
---|
32 | #define X_XagQueryVersion 0
|
---|
33 | #define X_XagCreate 1
|
---|
34 | #define X_XagDestroy 2
|
---|
35 | #define X_XagGetAttr 3
|
---|
36 | #define X_XagQuery 4
|
---|
37 | #define X_XagCreateAssoc 5
|
---|
38 | #define X_XagDestroyAssoc 6
|
---|
39 |
|
---|
40 | #define XAppGroup CARD32
|
---|
41 |
|
---|
42 | /*
|
---|
43 | * Redefine some basic types used by structures defined herein. This allows
|
---|
44 | * both the library and server to view communicated data as 32-bit entities,
|
---|
45 | * thus preventing problems on 64-bit architectures where libXext sees this
|
---|
46 | * data as 64 bits and the server sees it as 32 bits.
|
---|
47 | */
|
---|
48 |
|
---|
49 | #define Colormap CARD32
|
---|
50 | #define VisualID CARD32
|
---|
51 | #define Window CARD32
|
---|
52 |
|
---|
53 | typedef struct _XagQueryVersion {
|
---|
54 | CARD8 reqType; /* always XagReqCode */
|
---|
55 | CARD8 xagReqType; /* always X_XagQueryVersion */
|
---|
56 | CARD16 length B16;
|
---|
57 | CARD16 client_major_version B16;
|
---|
58 | CARD16 client_minor_version B16;
|
---|
59 | } xXagQueryVersionReq;
|
---|
60 | #define sz_xXagQueryVersionReq 8
|
---|
61 |
|
---|
62 | typedef struct {
|
---|
63 | BYTE type; /* X_Reply */
|
---|
64 | BOOL pad1;
|
---|
65 | CARD16 sequence_number B16;
|
---|
66 | CARD32 length B32;
|
---|
67 | CARD16 server_major_version B16;
|
---|
68 | CARD16 server_minor_version B16;
|
---|
69 | CARD32 pad2 B32;
|
---|
70 | CARD32 pad3 B32;
|
---|
71 | CARD32 pad4 B32;
|
---|
72 | CARD32 pad5 B32;
|
---|
73 | CARD32 pad6 B32;
|
---|
74 | } xXagQueryVersionReply;
|
---|
75 | #define sz_xXagQueryVersionReply 32
|
---|
76 |
|
---|
77 | /* Set AppGroup Attributes masks */
|
---|
78 | #define XagSingleScreenMask 1 << 0
|
---|
79 | #define XagDefaultRootMask 1 << XagNdefaultRoot
|
---|
80 | #define XagRootVisualMask 1 << XagNrootVisual
|
---|
81 | #define XagDefaultColormapMask 1 << XagNdefaultColormap
|
---|
82 | #define XagBlackPixelMask 1 << XagNblackPixel
|
---|
83 | #define XagWhitePixelMask 1 << XagNwhitePixel
|
---|
84 | #define XagAppGroupLeaderMask 1 << XagNappGroupLeader
|
---|
85 |
|
---|
86 | typedef struct _XagCreate {
|
---|
87 | CARD8 reqType; /* always XagReqCode */
|
---|
88 | CARD8 xagReqType; /* always X_XagCreate */
|
---|
89 | CARD16 length B16;
|
---|
90 | XAppGroup app_group B32;
|
---|
91 | CARD32 attrib_mask B32; /* LISTofVALUE follows */
|
---|
92 | } xXagCreateReq;
|
---|
93 | #define sz_xXagCreateReq 12
|
---|
94 |
|
---|
95 | typedef struct _XagDestroy {
|
---|
96 | CARD8 reqType; /* always XagReqCode */
|
---|
97 | CARD8 xagReqType; /* always X_XagDestroy */
|
---|
98 | CARD16 length B16;
|
---|
99 | XAppGroup app_group B32;
|
---|
100 | } xXagDestroyReq;
|
---|
101 | #define sz_xXagDestroyReq 8
|
---|
102 |
|
---|
103 | typedef struct _XagGetAttr {
|
---|
104 | CARD8 reqType; /* always XagReqCode */
|
---|
105 | CARD8 xagReqType; /* always X_XagGetAttr */
|
---|
106 | CARD16 length B16;
|
---|
107 | XAppGroup app_group B32;
|
---|
108 | } xXagGetAttrReq;
|
---|
109 | #define sz_xXagGetAttrReq 8
|
---|
110 |
|
---|
111 | typedef struct {
|
---|
112 | BYTE type; /* X_Reply */
|
---|
113 | BOOL pad1;
|
---|
114 | CARD16 sequence_number B16;
|
---|
115 | CARD32 length B32;
|
---|
116 | Window default_root B32;
|
---|
117 | VisualID root_visual B32;
|
---|
118 | Colormap default_colormap B32;
|
---|
119 | CARD32 black_pixel B32;
|
---|
120 | CARD32 white_pixel B32;
|
---|
121 | BOOL single_screen;
|
---|
122 | BOOL app_group_leader;
|
---|
123 | CARD16 pad2 B16;
|
---|
124 | } xXagGetAttrReply;
|
---|
125 | #define sz_xXagGetAttrReply 32
|
---|
126 |
|
---|
127 | typedef struct _XagQuery {
|
---|
128 | CARD8 reqType; /* always XagReqCode */
|
---|
129 | CARD8 xagReqType; /* always X_XagQuery */
|
---|
130 | CARD16 length B16;
|
---|
131 | CARD32 resource B32;
|
---|
132 | } xXagQueryReq;
|
---|
133 | #define sz_xXagQueryReq 8
|
---|
134 |
|
---|
135 | typedef struct {
|
---|
136 | BYTE type; /* X_Reply */
|
---|
137 | BOOL pad1;
|
---|
138 | CARD16 sequence_number B16;
|
---|
139 | CARD32 length B32;
|
---|
140 | XAppGroup app_group B32;
|
---|
141 | CARD32 pad2 B32;
|
---|
142 | CARD32 pad3 B32;
|
---|
143 | CARD32 pad4 B32;
|
---|
144 | CARD32 pad5 B32;
|
---|
145 | CARD32 pad6 B32;
|
---|
146 | } xXagQueryReply;
|
---|
147 | #define sz_xXagQueryReply 32
|
---|
148 |
|
---|
149 | typedef struct _XagCreateAssoc {
|
---|
150 | CARD8 reqType; /* always XagReqCode */
|
---|
151 | CARD8 xagReqType; /* always X_XagCreateAssoc */
|
---|
152 | CARD16 length B16;
|
---|
153 | Window window B32;
|
---|
154 | CARD16 window_type B16;
|
---|
155 | CARD16 system_window_len B16; /* LISTofCARD8 follows */
|
---|
156 | } xXagCreateAssocReq;
|
---|
157 | #define sz_xXagCreateAssocReq 12
|
---|
158 |
|
---|
159 | typedef struct _XagDestroyAssoc {
|
---|
160 | CARD8 reqType; /* always XagReqCode */
|
---|
161 | CARD8 xagReqType; /* always X_XagDestroyAssoc */
|
---|
162 | CARD16 length B16;
|
---|
163 | Window window B32;
|
---|
164 | } xXagDestroyAssocReq;
|
---|
165 | #define sz_xXagDestroyAssocReq 8
|
---|
166 |
|
---|
167 | #undef XAppGroup
|
---|
168 | /*
|
---|
169 | * Cancel the previous redefinition of the basic types, thus restoring their
|
---|
170 | * X.h definitions.
|
---|
171 | */
|
---|
172 |
|
---|
173 | #undef Window
|
---|
174 | #undef Colormap
|
---|
175 | #undef VisualID
|
---|
176 |
|
---|
177 | #endif /* } _AGPROTO_H_ */
|
---|
178 |
|
---|