|
|
1.1 ! root 1: /* $Header: X10.h,v 11.9 87/09/11 07:56:29 toddb Exp $ */ ! 2: /* ! 3: * Copyright 1985, 1986, 1987 by the Massachusetts Institute of Technology ! 4: * ! 5: * Permission to use, copy, modify, and distribute this software and its ! 6: * documentation for any purpose and without fee is hereby granted, provided ! 7: * that the above copyright notice appear in all copies and that both that ! 8: * copyright notice and this permission notice appear in supporting ! 9: * documentation, and that the name of M.I.T. not be used in advertising ! 10: * or publicity pertaining to distribution of the software without specific, ! 11: * written prior permission. M.I.T. makes no representations about the ! 12: * suitability of this software for any purpose. It is provided "as is" ! 13: * without express or implied warranty. ! 14: * ! 15: * The X Window System is a Trademark of MIT. ! 16: * ! 17: */ ! 18: ! 19: ! 20: /* ! 21: * X10.h - Header definition and support file for the C subroutine ! 22: * interface library for V10 support routines. ! 23: */ ! 24: #ifndef _X10_H_ ! 25: #define _X10_H_ ! 26: ! 27: /* Used in XDraw and XDrawFilled */ ! 28: ! 29: typedef struct { ! 30: short x, y; ! 31: unsigned short flags; ! 32: } Vertex; ! 33: ! 34: /* The meanings of the flag bits. If the bit is 1 the predicate is true */ ! 35: ! 36: #define VertexRelative 0x0001 /* else absolute */ ! 37: #define VertexDontDraw 0x0002 /* else draw */ ! 38: #define VertexCurved 0x0004 /* else straight */ ! 39: #define VertexStartClosed 0x0008 /* else not */ ! 40: #define VertexEndClosed 0x0010 /* else not */ ! 41: /*#define VertexDrawLastPoint 0x0020 */ /* else don't */ ! 42: ! 43: /* ! 44: The VertexDrawLastPoint option has not been implemented in XDraw and ! 45: XDrawFilled so it shouldn't be defined. ! 46: */ ! 47: ! 48: /* ! 49: * XAssoc - Associations used in the XAssocTable data structure. The ! 50: * associations are used as circular queue entries in the association table ! 51: * which is contains an array of circular queues (buckets). ! 52: */ ! 53: typedef struct _XAssoc { ! 54: struct _XAssoc *next; /* Next object in this bucket. */ ! 55: struct _XAssoc *prev; /* Previous obejct in this bucket. */ ! 56: Display *display; /* Display which ownes the id. */ ! 57: XID x_id; /* X Window System id. */ ! 58: char *data; /* Pointer to untyped memory. */ ! 59: } XAssoc; ! 60: ! 61: /* ! 62: * XAssocTable - X Window System id to data structure pointer association ! 63: * table. An XAssocTable is a hash table whose buckets are circular ! 64: * queues of XAssoc's. The XAssocTable is constructed from an array of ! 65: * XAssoc's which are the circular queue headers (bucket headers). ! 66: * An XAssocTable consists an XAssoc pointer that points to the first ! 67: * bucket in the bucket array and an integer that indicates the number ! 68: * of buckets in the array. ! 69: */ ! 70: typedef struct { ! 71: XAssoc *buckets; /* Pointer to first bucket in bucket array.*/ ! 72: int size; /* Table size (number of buckets). */ ! 73: } XAssocTable; ! 74: ! 75: XAssocTable *XCreateAssocTable(); ! 76: char *XLookUpAssoc(); ! 77: ! 78: #endif _X10_H_
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.