[BACK]Return to glx.h_noformals CVS log [TXT][DIR] Up to [Development] / projects / ogl-sample / main / gfx / include / glx

File: [Development] / projects / ogl-sample / main / gfx / include / glx / glx.h_noformals (download)

Revision 1.2, Wed Apr 5 06:43:40 2000 UTC (17 years, 6 months ago) by ljp
Branch: MAIN
CVS Tags: tested_with_xf86_3_3, HEAD
Changes since 1.1: +1 -1 lines

Change license version to 1.1.

#ifndef __GLX_glx_h__
#define __GLX_glx_h__

/*
** License Applicability. Except to the extent portions of this file are
** made subject to an alternative license as permitted in the SGI Free
** Software License B, Version 1.1 (the "License"), the contents of this
** file are subject only to the provisions of the License. You may not use
** this file except in compliance with the License. You may obtain a copy
** of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
** Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
** 
** http://oss.sgi.com/projects/FreeB
** 
** Note that, as provided in the License, the Software is distributed on an
** "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
** DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
** CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
** PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
** 
** Original Code. The Original Code is: OpenGL Sample Implementation,
** Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
** Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
** Copyright in any portions created by third parties is as indicated
** elsewhere herein. All Rights Reserved.
** 
** Additional Notice Provisions: The application programming interfaces
** established by SGI in conjunction with the Original Code are The
** OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
** April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
** 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
** Window System(R) (Version 1.3), released October 19, 1998. This software
** was created using the OpenGL(R) version 1.2.1 Sample Implementation
** published by SGI, but has not been independently verified as being
** compliant with the OpenGL(R) version 1.2.1 Specification.
**
*/

#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/Xmd.h>
#include <GL/gl.h>

#ifdef __cplusplus
extern "C" {
#endif

/* GLXContext is a pointer to opaque data */
typedef struct __GLXcontextRec *GLXContext;

/* GLXContextID represents the XID for a GLXContext */
typedef XID GLXContextID;

typedef XID GLXPixmap;
typedef XID GLXDrawable;

/* names for attributes to glXGetConfig */
#define GLX_USE_GL		1	/* support GLX rendering */
#define GLX_BUFFER_SIZE		2	/* depth of the color buffer */
#define GLX_LEVEL		3	/* level in plane stacking */
#define GLX_RGBA		4	/* true if RGBA mode */
#define GLX_DOUBLEBUFFER	5	/* double buffering supported */
#define GLX_STEREO		6	/* stereo buffering supported */
#define GLX_AUX_BUFFERS 	7	/* number of aux buffers */
#define GLX_RED_SIZE		8	/* number of red component bits */
#define GLX_GREEN_SIZE		9	/* number of green component bits */
#define GLX_BLUE_SIZE		10	/* number of blue component bits */
#define GLX_ALPHA_SIZE		11	/* number of alpha component bits */
#define GLX_DEPTH_SIZE		12	/* number of depth bits */
#define GLX_STENCIL_SIZE	13	/* number of stencil bits */
#define GLX_ACCUM_RED_SIZE	14	/* number of red accum bits */
#define GLX_ACCUM_GREEN_SIZE	15	/* number of green accum bits */
#define GLX_ACCUM_BLUE_SIZE	16	/* number of blue accum bits */
#define GLX_ACCUM_ALPHA_SIZE	17	/* number of alpha accum bits */

/*
** Error return values from glXGetConfig.  Success is indicated by
** a value of 0.
*/
#define GLX_BAD_SCREEN		1	/* screen # is bad */
#define GLX_BAD_ATTRIBUTE	2	/* attribute to get is bad */
#define GLX_NO_EXTENSION	3	/* no glx extension on server */
#define GLX_BAD_VISUAL		4	/* visual # not known by GLX */

/************************************************************************/

extern XVisualInfo* glXChooseVisual (Display*, int, int*);
extern void glXCopyContext (Display*, GLXContext, GLXContext, GLuint);
extern GLXContext glXCreateContext (Display*, XVisualInfo*, GLXContext, Bool);
extern GLXPixmap glXCreateGLXPixmap (Display*, XVisualInfo*, Pixmap);
extern void glXDestroyContext (Display*, GLXContext);
extern void glXDestroyGLXPixmap (Display*, GLXPixmap);
extern int glXGetConfig (Display*, XVisualInfo*, int, int*);
extern GLXContext glXGetCurrentContext (void);
extern GLXDrawable glXGetCurrentDrawable (void);
extern Bool glXIsDirect (Display*, GLXContext);
extern Bool glXMakeCurrent (Display*, GLXDrawable, GLXContext);
extern Bool glXQueryExtension (Display*, int*, int*);
extern Bool glXQueryVersion (Display*, int*, int*);
extern void glXSwapBuffers (Display*, Window);
extern void glXUseXFont (Font, int, int, int);
extern void glXWaitGL (void);
extern void glXWaitX (void);

#ifdef __cplusplus
}
#endif

#endif /* !__GLX_glx_h__ */