117ca54c3Smrg/* 217ca54c3Smrg * Declarations of request structures for the BIGFONT extension. 317ca54c3Smrg * 417ca54c3Smrg * Copyright (c) 1999-2000 Bruno Haible 517ca54c3Smrg * Copyright (c) 1999-2000 The XFree86 Project, Inc. 617ca54c3Smrg */ 717ca54c3Smrg 817ca54c3Smrg/* THIS IS NOT AN X CONSORTIUM STANDARD */ 917ca54c3Smrg 1017ca54c3Smrg#ifndef _XF86BIGFPROTO_H_ 1117ca54c3Smrg#define _XF86BIGFPROTO_H_ 1217ca54c3Smrg 1317ca54c3Smrg#include <X11/extensions/xf86bigfont.h> 1417ca54c3Smrg 1517ca54c3Smrg#define XF86BIGFONTNAME "XFree86-Bigfont" 1617ca54c3Smrg 1717ca54c3Smrg#define XF86BIGFONT_MAJOR_VERSION 1 /* current version numbers */ 1817ca54c3Smrg#define XF86BIGFONT_MINOR_VERSION 1 1917ca54c3Smrg 2017ca54c3Smrgtypedef struct _XF86BigfontQueryVersion { 2117ca54c3Smrg CARD8 reqType; /* always XF86BigfontReqCode */ 2217ca54c3Smrg CARD8 xf86bigfontReqType; /* always X_XF86BigfontQueryVersion */ 23ea1d6981Smrg CARD16 length; 2417ca54c3Smrg} xXF86BigfontQueryVersionReq; 2517ca54c3Smrg#define sz_xXF86BigfontQueryVersionReq 4 2617ca54c3Smrg 2717ca54c3Smrgtypedef struct { 2817ca54c3Smrg BYTE type; /* X_Reply */ 2917ca54c3Smrg CARD8 capabilities; 30ea1d6981Smrg CARD16 sequenceNumber; 31ea1d6981Smrg CARD32 length; 32ea1d6981Smrg CARD16 majorVersion; /* major version of XFree86-Bigfont */ 33ea1d6981Smrg CARD16 minorVersion; /* minor version of XFree86-Bigfont */ 34ea1d6981Smrg CARD32 uid; 35ea1d6981Smrg CARD32 gid; 36ea1d6981Smrg CARD32 signature; 37ea1d6981Smrg CARD32 pad1; 38ea1d6981Smrg CARD32 pad2; 3917ca54c3Smrg} xXF86BigfontQueryVersionReply; 4017ca54c3Smrg#define sz_xXF86BigfontQueryVersionReply 32 4117ca54c3Smrg 4217ca54c3Smrg/* Bit masks that can be set in the capabilities */ 4317ca54c3Smrg#define XF86Bigfont_CAP_LocalShm 1 4417ca54c3Smrg 4517ca54c3Smrgtypedef struct _XF86BigfontQueryFont { 4617ca54c3Smrg CARD8 reqType; /* always XF86BigfontReqCode */ 4717ca54c3Smrg CARD8 xf86bigfontReqType; /* always X_XF86BigfontQueryFont */ 48ea1d6981Smrg CARD16 length; 49ea1d6981Smrg CARD32 id; 50ea1d6981Smrg CARD32 flags; 5117ca54c3Smrg} xXF86BigfontQueryFontReq; 5217ca54c3Smrg#define sz_xXF86BigfontQueryFontReq 12 5317ca54c3Smrg 5417ca54c3Smrgtypedef struct { 5517ca54c3Smrg BYTE type; /* X_Reply */ 5617ca54c3Smrg CARD8 pad1; 57ea1d6981Smrg CARD16 sequenceNumber; 58ea1d6981Smrg CARD32 length; 5917ca54c3Smrg xCharInfo minBounds; 6017ca54c3Smrg#ifndef WORD64 61ea1d6981Smrg CARD32 walign1; 6217ca54c3Smrg#endif 6317ca54c3Smrg xCharInfo maxBounds; 6417ca54c3Smrg#ifndef WORD64 65ea1d6981Smrg CARD32 walign2; 6617ca54c3Smrg#endif 67ea1d6981Smrg CARD16 minCharOrByte2; 68ea1d6981Smrg CARD16 maxCharOrByte2; 69ea1d6981Smrg CARD16 defaultChar; 70ea1d6981Smrg CARD16 nFontProps; 7117ca54c3Smrg CARD8 drawDirection; 7217ca54c3Smrg CARD8 minByte1; 7317ca54c3Smrg CARD8 maxByte1; 7417ca54c3Smrg BOOL allCharsExist; 75ea1d6981Smrg INT16 fontAscent; 76ea1d6981Smrg INT16 fontDescent; 77ea1d6981Smrg CARD32 nCharInfos; 78ea1d6981Smrg CARD32 nUniqCharInfos; 79ea1d6981Smrg CARD32 shmid; 80ea1d6981Smrg CARD32 shmsegoffset; 8117ca54c3Smrg /* followed by nFontProps xFontProp structures */ 8217ca54c3Smrg /* and if nCharInfos > 0 && shmid == -1, 8317ca54c3Smrg followed by nUniqCharInfos xCharInfo structures 8417ca54c3Smrg and then by nCharInfos CARD16 indices (each >= 0, < nUniqCharInfos) 8517ca54c3Smrg and then, if nCharInfos is odd, one more CARD16 for padding. */ 8617ca54c3Smrg} xXF86BigfontQueryFontReply; 8717ca54c3Smrg#define sz_xXF86BigfontQueryFontReply 72 8817ca54c3Smrg 8917ca54c3Smrg/* Bit masks that can be set in the flags */ 9017ca54c3Smrg#define XF86Bigfont_FLAGS_Shm 1 9117ca54c3Smrg 9217ca54c3Smrg#endif /* _XF86BIGFPROTO_H_ */ 93