home *** CD-ROM | disk | FTP | other *** search
- /* $XConsortium: X10.h,v 11.12 94/04/17 20:11:33 jim Exp $ */
- /*
- *
- Copyright (c) 1985, 1986, 1987 X Consortium
-
- Permission is hereby granted, free of charge, to any person obtaining a copy
- of this software and associated documentation files (the "Software"), to deal
- in the Software without restriction, including without limitation the rights
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- copies of the Software, and to permit persons to whom the Software is
- furnished to do so, subject to the following conditions:
-
- The above copyright notice and this permission notice shall be included in
- all copies or substantial portions of the Software.
-
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
- Except as contained in this notice, the name of the X Consortium shall not be
- used in advertising or otherwise to promote the sale, use or other dealings
- in this Software without prior written authorization from the X Consortium.
- *
- * The X Window System is a Trademark of X Consortium.
- *
- */
-
-
- /*
- * X10.h - Header definition and support file for the C subroutine
- * interface library for V10 support routines.
- */
- #ifndef _X10_H_
- #define _X10_H_
-
- /* Used in XDraw and XDrawFilled */
-
- typedef struct {
- short x, y;
- unsigned short flags;
- } Vertex;
-
- /* The meanings of the flag bits. If the bit is 1 the predicate is true */
-
- #define VertexRelative 0x0001 /* else absolute */
- #define VertexDontDraw 0x0002 /* else draw */
- #define VertexCurved 0x0004 /* else straight */
- #define VertexStartClosed 0x0008 /* else not */
- #define VertexEndClosed 0x0010 /* else not */
- /*#define VertexDrawLastPoint 0x0020 */ /* else don't */
-
- /*
- The VertexDrawLastPoint option has not been implemented in XDraw and
- XDrawFilled so it shouldn't be defined.
- */
-
- /*
- * XAssoc - Associations used in the XAssocTable data structure. The
- * associations are used as circular queue entries in the association table
- * which is contains an array of circular queues (buckets).
- */
- typedef struct _XAssoc {
- struct _XAssoc *next; /* Next object in this bucket. */
- struct _XAssoc *prev; /* Previous obejct in this bucket. */
- Display *display; /* Display which ownes the id. */
- XID x_id; /* X Window System id. */
- char *data; /* Pointer to untyped memory. */
- } XAssoc;
-
- /*
- * XAssocTable - X Window System id to data structure pointer association
- * table. An XAssocTable is a hash table whose buckets are circular
- * queues of XAssoc's. The XAssocTable is constructed from an array of
- * XAssoc's which are the circular queue headers (bucket headers).
- * An XAssocTable consists an XAssoc pointer that points to the first
- * bucket in the bucket array and an integer that indicates the number
- * of buckets in the array.
- */
- typedef struct {
- XAssoc *buckets; /* Pointer to first bucket in bucket array.*/
- int size; /* Table size (number of buckets). */
- } XAssocTable;
-
- XAssocTable *XCreateAssocTable();
- char *XLookUpAssoc();
-
- #endif /* _X10_H_ */
-