Initial commit
[xorg_rtime.git] / xorg-server-1.4 / hw / dmx / glxProxy / glxcontext.h
blobd59df3f0cd9c0c912567f56f2bf52aeb673acaf4
1 #ifndef _GLX_context_h_
2 #define _GLX_context_h_
4 /*
5 ** License Applicability. Except to the extent portions of this file are
6 ** made subject to an alternative license as permitted in the SGI Free
7 ** Software License B, Version 1.1 (the "License"), the contents of this
8 ** file are subject only to the provisions of the License. You may not use
9 ** this file except in compliance with the License. You may obtain a copy
10 ** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
11 ** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
12 **
13 ** http://oss.sgi.com/projects/FreeB
14 **
15 ** Note that, as provided in the License, the Software is distributed on an
16 ** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
17 ** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
18 ** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
19 ** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
20 **
21 ** Original Code. The Original Code is: OpenGL Sample Implementation,
22 ** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
23 ** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
24 ** Copyright in any portions created by third parties is as indicated
25 ** elsewhere herein. All Rights Reserved.
26 **
27 ** Additional Notice Provisions: The application programming interfaces
28 ** established by SGI in conjunction with the Original Code are The
29 ** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
30 ** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
31 ** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
32 ** Window System(R) (Version 1.3), released October 19, 1998. This software
33 ** was created using the OpenGL(R) version 1.2.1 Sample Implementation
34 ** published by SGI, but has not been independently verified as being
35 ** compliant with the OpenGL(R) version 1.2.1 Specification.
39 typedef struct __GLXcontextRec __GLXcontext;
41 #include "GL/internal/glcore.h"
43 struct __GLXcontextRec {
45 ** list of context structs
47 struct __GLXcontextRec *last;
48 struct __GLXcontextRec *next;
51 ** Pointer to screen info data for this context. This is set
52 ** when the context is created.
54 ScreenPtr pScreen;
55 __GLXscreenInfo *pGlxScreen;
58 ** This context is created with respect to this visual.
60 VisualRec *pVisual;
61 __GLXvisualConfig *pGlxVisual;
62 __GLXFBConfig *pFBConfig;
65 ** The XID of this context.
67 XID id;
68 XID *real_ids;
71 ** The XID of the shareList context.
73 XID share_id;
76 ** Visual id.
78 VisualID vid;
79 VisualID *real_vids;
82 ** screen number.
84 GLint screen;
87 ** Whether this context's ID still exists.
89 GLboolean idExists;
92 ** Whether this context is current for some client.
94 GLboolean isCurrent;
97 ** Buffers for feedback and selection.
99 GLfloat *feedbackBuf;
100 GLint feedbackBufSize; /* number of elements allocated */
101 GLuint *selectBuf;
102 GLint selectBufSize; /* number of elements allocated */
105 ** Set only if current drawable is a glx pixmap.
107 __GLXpixmap *pGlxPixmap;
108 __GLXpixmap *pGlxReadPixmap;
109 __glXWindow *pGlxWindow;
110 __glXWindow *pGlxReadWindow;
111 __glXPbuffer *pGlxPbuffer;
112 __glXPbuffer *pGlxReadPbuffer;
116 #endif /* !__GLX_context_h__ */