1 /***********************************************************
2 
3 Copyright (c) 1999  The XFree86 Project Inc.
4 
5 All Rights Reserved.
6 
7 The above copyright notice and this permission notice shall be included in
8 all copies or substantial portions of the Software.
9 
10 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
13 OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
14 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
15 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
16 
17 Except as contained in this notice, the name of The XFree86 Project
18 Inc. shall not be used in advertising or otherwise to promote the
19 sale, use or other dealings in this Software without prior written
20 authorization from The XFree86 Project Inc..
21 
22 */
23 
24 /**
25  ** Types definitions shared between server and clients
26  **/
27 
28 #ifndef _XDEFS_H
29 #define _XDEFS_H
30 
31 #ifdef _XSERVER64
32 #include <X11/Xmd.h>
33 #endif
34 
35 #ifndef _XTYPEDEF_ATOM
36 #  define _XTYPEDEF_ATOM
37 #  ifndef _XSERVER64
38 typedef unsigned long Atom;
39 #  else
40 typedef CARD32 Atom;
41 #  endif
42 #endif
43 
44 #ifndef Bool
45 #  ifndef _XTYPEDEF_BOOL
46 #   define _XTYPEDEF_BOOL
47 typedef int Bool;
48 #  endif
49 #endif
50 
51 #ifndef _XTYPEDEF_POINTER
52 #  define _XTYPEDEF_POINTER
53 typedef void *pointer;
54 #endif
55 
56 #ifndef _XTYPEDEF_CLIENTPTR
57 typedef struct _Client *ClientPtr;
58 #  define _XTYPEDEF_CLIENTPTR
59 #endif
60 
61 #ifndef _XTYPEDEF_XID
62 #  define _XTYPEDEF_XID
63 #  ifndef _XSERVER64
64 typedef unsigned long XID;
65 #  else
66 typedef CARD32 XID;
67 #  endif
68 #endif
69 
70 #ifndef _XTYPEDEF_MASK
71 #  define _XTYPEDEF_MASK
72 #  ifndef _XSERVER64
73 typedef unsigned long Mask;
74 #  else
75 typedef CARD32 Mask;
76 #  endif
77 #endif
78 
79 #ifndef _XTYPEDEF_FONTPTR
80 #  define _XTYPEDEF_FONTPTR
81 typedef struct _Font *FontPtr; /* also in fonts/include/font.h */
82 #endif
83 
84 #ifndef _XTYPEDEF_FONT
85 #  define _XTYPEDEF_FONT
86 typedef XID	Font;
87 #endif
88 
89 #ifndef _XTYPEDEF_FSID
90 #  ifndef _XSERVER64
91 typedef unsigned long FSID;
92 #  else
93 typedef CARD32 FSID;
94 #  endif
95 #endif
96 
97 typedef FSID AccContext;
98 
99 /* OS independent time value
100    XXX Should probably go in Xos.h */
101 typedef struct timeval **OSTimePtr;
102 
103 
104 typedef void (* BlockHandlerProcPtr)(void * /* blockData */,
105 				     OSTimePtr /* pTimeout */,
106 				     void * /* pReadmask */);
107 
108 #endif
109