Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:14:17

0001 /*
0002 Copyright 1996, 1998, 2001  The Open Group
0003 
0004 Permission to use, copy, modify, distribute, and sell this software and its
0005 documentation for any purpose is hereby granted without fee, provided that
0006 the above copyright notice appear in all copies and that both that
0007 copyright notice and this permission notice appear in supporting
0008 documentation.
0009 
0010 The above copyright notice and this permission notice shall be included
0011 in all copies or substantial portions of the Software.
0012 
0013 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
0014 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
0015 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
0016 IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
0017 OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
0018 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
0019 OTHER DEALINGS IN THE SOFTWARE.
0020 
0021 Except as contained in this notice, the name of The Open Group shall
0022 not be used in advertising or otherwise to promote the sale, use or
0023 other dealings in this Software without prior written authorization
0024 from The Open Group.
0025 */
0026 
0027 #ifndef _AGPROTO_H_ /* { */
0028 #define _AGPROTO_H_
0029 
0030 #include <X11/extensions/ag.h>
0031 
0032 #define X_XagQueryVersion       0
0033 #define X_XagCreate         1
0034 #define X_XagDestroy            2
0035 #define X_XagGetAttr            3
0036 #define X_XagQuery          4
0037 #define X_XagCreateAssoc        5
0038 #define X_XagDestroyAssoc       6
0039 
0040 #define XAppGroup CARD32
0041 
0042 /*
0043 * Redefine some basic types used by structures defined herein.  This allows
0044 * both the library and server to view communicated data as 32-bit entities,
0045 * thus preventing problems on 64-bit architectures where libXext sees this
0046 * data as 64 bits and the server sees it as 32 bits.
0047 */
0048 
0049 #define Colormap CARD32
0050 #define VisualID CARD32
0051 #define Window CARD32
0052 
0053 typedef struct _XagQueryVersion {
0054     CARD8   reqType;    /* always XagReqCode */
0055     CARD8   xagReqType; /* always X_XagQueryVersion */
0056     CARD16  length B16;
0057     CARD16  client_major_version B16;
0058     CARD16  client_minor_version B16;
0059 } xXagQueryVersionReq;
0060 #define sz_xXagQueryVersionReq      8
0061 
0062 typedef struct {
0063     BYTE    type;       /* X_Reply */
0064     BOOL    pad1;
0065     CARD16  sequence_number B16;
0066     CARD32  length B32;
0067     CARD16  server_major_version B16;
0068     CARD16  server_minor_version B16;
0069     CARD32  pad2 B32;
0070     CARD32  pad3 B32;
0071     CARD32  pad4 B32;
0072     CARD32  pad5 B32;
0073     CARD32  pad6 B32;
0074 } xXagQueryVersionReply;
0075 #define sz_xXagQueryVersionReply    32
0076 
0077 /* Set AppGroup Attributes masks */
0078 #define XagSingleScreenMask     1 << 0
0079 #define XagDefaultRootMask      1 << XagNdefaultRoot
0080 #define XagRootVisualMask       1 << XagNrootVisual
0081 #define XagDefaultColormapMask      1 << XagNdefaultColormap
0082 #define XagBlackPixelMask       1 << XagNblackPixel
0083 #define XagWhitePixelMask       1 << XagNwhitePixel
0084 #define XagAppGroupLeaderMask       1 << XagNappGroupLeader
0085 
0086 typedef struct _XagCreate {
0087     CARD8   reqType;    /* always XagReqCode */
0088     CARD8   xagReqType; /* always X_XagCreate */
0089     CARD16  length B16;
0090     XAppGroup   app_group B32;
0091     CARD32  attrib_mask B32; /* LISTofVALUE follows */
0092 } xXagCreateReq;
0093 #define sz_xXagCreateReq        12
0094 
0095 typedef struct _XagDestroy {
0096     CARD8   reqType;    /* always XagReqCode */
0097     CARD8   xagReqType; /* always X_XagDestroy */
0098     CARD16  length B16;
0099     XAppGroup   app_group  B32;
0100 } xXagDestroyReq;
0101 #define sz_xXagDestroyReq       8
0102 
0103 typedef struct _XagGetAttr {
0104     CARD8   reqType;    /* always XagReqCode */
0105     CARD8   xagReqType; /* always X_XagGetAttr */
0106     CARD16  length B16;
0107     XAppGroup   app_group B32;
0108 } xXagGetAttrReq;
0109 #define sz_xXagGetAttrReq       8
0110 
0111 typedef struct {
0112     BYTE    type;       /* X_Reply */
0113     BOOL    pad1;
0114     CARD16  sequence_number B16;
0115     CARD32  length B32;
0116     Window  default_root B32;
0117     VisualID    root_visual B32;
0118     Colormap    default_colormap B32;
0119     CARD32  black_pixel B32;
0120     CARD32  white_pixel B32;
0121     BOOL    single_screen;
0122     BOOL    app_group_leader;
0123     CARD16  pad2 B16;
0124 } xXagGetAttrReply;
0125 #define sz_xXagGetAttrReply     32
0126 
0127 typedef struct _XagQuery {
0128     CARD8   reqType;    /* always XagReqCode */
0129     CARD8   xagReqType; /* always X_XagQuery */
0130     CARD16  length B16;
0131     CARD32  resource B32;
0132 } xXagQueryReq;
0133 #define sz_xXagQueryReq         8
0134 
0135 typedef struct {
0136     BYTE    type;       /* X_Reply */
0137     BOOL    pad1;
0138     CARD16  sequence_number B16;
0139     CARD32  length B32;
0140     XAppGroup   app_group B32;
0141     CARD32  pad2 B32;
0142     CARD32  pad3 B32;
0143     CARD32  pad4 B32;
0144     CARD32  pad5 B32;
0145     CARD32  pad6 B32;
0146 } xXagQueryReply;
0147 #define sz_xXagQueryReply       32
0148 
0149 typedef struct _XagCreateAssoc {
0150     CARD8   reqType;    /* always XagReqCode */
0151     CARD8   xagReqType; /* always X_XagCreateAssoc */
0152     CARD16  length B16;
0153     Window  window B32;
0154     CARD16  window_type B16;
0155     CARD16  system_window_len B16; /* LISTofCARD8 follows */
0156 } xXagCreateAssocReq;
0157 #define sz_xXagCreateAssocReq       12
0158 
0159 typedef struct _XagDestroyAssoc {
0160     CARD8   reqType;    /* always XagReqCode */
0161     CARD8   xagReqType; /* always X_XagDestroyAssoc */
0162     CARD16  length B16;
0163     Window  window B32;
0164 } xXagDestroyAssocReq;
0165 #define sz_xXagDestroyAssocReq      8
0166 
0167 #undef XAppGroup
0168 /*
0169  * Cancel the previous redefinition of the basic types, thus restoring their
0170  * X.h definitions.
0171  */
0172 
0173 #undef Window
0174 #undef Colormap
0175 #undef VisualID
0176 
0177 #endif /* } _AGPROTO_H_ */
0178