1: #include <X/mit-copyright.h>
   2: 
   3: /* $Header: XlibInternal.h,v 10.8 86/02/01 15:42:21 tony Rel $ */
   4: /* Copyright 1984, 1985  Massachusetts Institute of Technology */
   5: 
   6: /*
   7:  *	XlibInternal.h - Header definition and support file for the internal
   8:  *	support routines (XlibInternal) used by the C subroutine interface
   9:  *	library (Xlib) to the X Window System.
  10:  *
  11:  */
  12: 
  13: #include <sys/types.h>
  14: #include "Xlib.h"
  15: #include "../X/Xproto.h"
  16: #include <stdio.h>
  17: #include <netinet/in.h>
  18: #include <sys/ioctl.h>
  19: #include <netdb.h>
  20: #include <errno.h>
  21: 
  22: extern int errno;           /* Internal system error number. */
  23: extern char *malloc();          /* commonly used in the library. */
  24: extern char *realloc();         /* used with some frequency.	 */
  25: 
  26: extern Display *_XlibCurrentDisplay;    /* Currently active Display. */
  27: 
  28: extern (*_XIOErrorFunction)();      /* X system error reporting routine. */
  29: extern (*_XErrorFunction)();        /* X_Error event reporting routine. */
  30: 
  31: /*
  32:  * Boolean datatype.
  33:  */
  34: 
  35: typedef enum _bool {FALSE, TRUE} Bool;
  36: 
  37: /* Pointers to the above routines. */
  38: #define _XIOError (*_XIOErrorFunction)
  39: #define _XError (*_XErrorFunction)
  40: 
  41: #define BUFSIZE 2048            /* X output buffer size. */
  42: 
  43: 
  44: /*
  45:  * X Protocol packetizing macros.
  46:  */
  47: 
  48: 
  49: /*
  50:  * GetReq - Get the next avilable X request packet in the buffer and
  51:  * return it.
  52:  *
  53:  * "cd" is the X protocol code.
  54:  * "id" is the window id of the requesting window.
  55:  */
  56: #define GetReq(cd, id) \
  57:     dpy = _XlibCurrentDisplay;\
  58:     if ((dpy->bufptr + sizeof(XReq)) > dpy->bufmax)\
  59:         _XFlush(dpy);\
  60:     req = (XReq *)dpy->bufptr;\
  61:     req->code = cd;\
  62:     req->windowId = id;\
  63:     dpy->bufptr += sizeof(XReq);\
  64:     dpy->request++;\
  65:     dpy->lastdraw = NULL
  66: 
  67: /*
  68:  * Data - Place data in the buffer and pad the end to provide
  69:  * 32 bit word alignment.  Transmit if the buffer fills.
  70:  *
  71:  * "dpy" is a pointer to a Display.
  72:  * "data" is a pinter to a data buffer.
  73:  * "len" is the lenght of the data buffer.
  74:  */
  75: #define Data(dpy, data, len) \
  76:     if (dpy->bufptr + len < dpy->bufmax) {\
  77:         bcopy(data, dpy->bufptr, len);\
  78:         dpy->bufptr += (len + 3) & ~3;\
  79:     } else\
  80:         _XSend(dpy, data, len)

Defined enum's

_bool defined in line 35; never used

Defined typedef's

Bool defined in line 35; used 1 times

Defined macros

GetReq defined in line 56; used 132 times

Usage of this include

XlibInternal.h used 157 times
Last modified: 1986-02-01
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 689
Valid CSS Valid XHTML 1.0 Strict