117ca54c3Smrg/* 217ca54c3Smrg * Copyright © 2007-2008 Peter Hutterer 317ca54c3Smrg * 417ca54c3Smrg * Permission is hereby granted, free of charge, to any person obtaining a 517ca54c3Smrg * copy of this software and associated documentation files (the "Software"), 617ca54c3Smrg * to deal in the Software without restriction, including without limitation 717ca54c3Smrg * the rights to use, copy, modify, merge, publish, distribute, sublicense, 817ca54c3Smrg * and/or sell copies of the Software, and to permit persons to whom the 917ca54c3Smrg * Software is furnished to do so, subject to the following conditions: 1017ca54c3Smrg * 1117ca54c3Smrg * The above copyright notice and this permission notice (including the next 1217ca54c3Smrg * paragraph) shall be included in all copies or substantial portions of the 1317ca54c3Smrg * Software. 1417ca54c3Smrg * 1517ca54c3Smrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 1617ca54c3Smrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 1717ca54c3Smrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 1817ca54c3Smrg * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 1917ca54c3Smrg * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 2017ca54c3Smrg * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 2117ca54c3Smrg * DEALINGS IN THE SOFTWARE. 2217ca54c3Smrg * 2317ca54c3Smrg * Authors: Peter Hutterer, University of South Australia, NICTA 2417ca54c3Smrg * 2517ca54c3Smrg */ 2617ca54c3Smrg 2717ca54c3Smrg#ifndef _GEPROTO_H_ 2817ca54c3Smrg#define _GEPROTO_H_ 2917ca54c3Smrg 3017ca54c3Smrg#include<X11/Xproto.h> 3117ca54c3Smrg#include<X11/X.h> 3217ca54c3Smrg#include<X11/extensions/ge.h> 3317ca54c3Smrg 3417ca54c3Smrg 3517ca54c3Smrg/********************************************************* 3617ca54c3Smrg * 3717ca54c3Smrg * Protocol request constants 3817ca54c3Smrg * 3917ca54c3Smrg */ 4017ca54c3Smrg 4117ca54c3Smrg#define X_GEGetExtensionVersion 1 4217ca54c3Smrg 4317ca54c3Smrg/********************************************************* 4417ca54c3Smrg * 4517ca54c3Smrg * XGE protocol requests/replies 4617ca54c3Smrg * 4717ca54c3Smrg */ 4817ca54c3Smrg 4917ca54c3Smrg/* generic request */ 5017ca54c3Smrgtypedef struct { 5117ca54c3Smrg CARD8 reqType; 5217ca54c3Smrg CARD8 ReqType; 53ea1d6981Smrg CARD16 length; 5417ca54c3Smrg} xGEReq; 5517ca54c3Smrg 5617ca54c3Smrg 5717ca54c3Smrg/* QueryVersion */ 5817ca54c3Smrgtypedef struct { 5917ca54c3Smrg CARD8 reqType; /* input extension major code */ 6017ca54c3Smrg CARD8 ReqType; /* always X_GEQueryVersion */ 61ea1d6981Smrg CARD16 length; 62ea1d6981Smrg CARD16 majorVersion; 63ea1d6981Smrg CARD16 minorVersion; 6417ca54c3Smrg} xGEQueryVersionReq; 6517ca54c3Smrg 6617ca54c3Smrg#define sz_xGEQueryVersionReq 8 6717ca54c3Smrg 6817ca54c3Smrgtypedef struct { 6917ca54c3Smrg CARD8 repType; /* X_Reply */ 7017ca54c3Smrg CARD8 RepType; /* always X_GEQueryVersion */ 71ea1d6981Smrg CARD16 sequenceNumber; 72ea1d6981Smrg CARD32 length; 73ea1d6981Smrg CARD16 majorVersion; 74ea1d6981Smrg CARD16 minorVersion; 75ea1d6981Smrg CARD32 pad00; 76ea1d6981Smrg CARD32 pad01; 77ea1d6981Smrg CARD32 pad02; 78ea1d6981Smrg CARD32 pad03; 79ea1d6981Smrg CARD32 pad04; 8017ca54c3Smrg} xGEQueryVersionReply; 8117ca54c3Smrg 8217ca54c3Smrg#define sz_xGEQueryVersionReply 32 8317ca54c3Smrg 8417ca54c3Smrg#endif /* _GEPROTO_H_ */ 8517ca54c3Smrg 86