summaryrefslogtreecommitdiff
path: root/plugins/gtkui/gtkglext-gtk2/gdk/gdkgltokens.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/gtkui/gtkglext-gtk2/gdk/gdkgltokens.h')
-rw-r--r--plugins/gtkui/gtkglext-gtk2/gdk/gdkgltokens.h298
1 files changed, 298 insertions, 0 deletions
diff --git a/plugins/gtkui/gtkglext-gtk2/gdk/gdkgltokens.h b/plugins/gtkui/gtkglext-gtk2/gdk/gdkgltokens.h
new file mode 100644
index 00000000..417068d1
--- /dev/null
+++ b/plugins/gtkui/gtkglext-gtk2/gdk/gdkgltokens.h
@@ -0,0 +1,298 @@
+/* GdkGLExt - OpenGL Extension to GDK
+ * Copyright (C) 2002-2004 Naofumi Yasufuku
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+ */
+
+#ifndef __GDK_GL_TOKENS_H__
+#define __GDK_GL_TOKENS_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+/*
+ * Success return value
+ */
+#define GDK_GL_SUCCESS 0 /* same as 'Success' of X11 */
+
+/*
+ * Attribute list terminator
+ */
+#define GDK_GL_ATTRIB_LIST_NONE 0 /* same as 'None' of X11 */
+
+/*
+ * This source is based on the OpenGL(R) Sample Implementation by SGI.
+ */
+
+/*
+** 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.
+*/
+
+/*
+ * Visual Config Attributes.
+ */
+typedef enum
+{
+ GDK_GL_USE_GL = 1, /* support GLX rendering */
+ GDK_GL_BUFFER_SIZE = 2, /* depth of the color buffer */
+ GDK_GL_LEVEL = 3, /* level in plane stacking */
+ GDK_GL_RGBA = 4, /* true if RGBA mode */
+ GDK_GL_DOUBLEBUFFER = 5, /* double buffering supported */
+ GDK_GL_STEREO = 6, /* stereo buffering supported */
+ GDK_GL_AUX_BUFFERS = 7, /* number of aux buffers */
+ GDK_GL_RED_SIZE = 8, /* number of red component bits */
+ GDK_GL_GREEN_SIZE = 9, /* number of green component bits */
+ GDK_GL_BLUE_SIZE = 10, /* number of blue component bits */
+ GDK_GL_ALPHA_SIZE = 11, /* number of alpha component bits */
+ GDK_GL_DEPTH_SIZE = 12, /* number of depth bits */
+ GDK_GL_STENCIL_SIZE = 13, /* number of stencil bits */
+ GDK_GL_ACCUM_RED_SIZE = 14, /* number of red accum bits */
+ GDK_GL_ACCUM_GREEN_SIZE = 15, /* number of green accum bits */
+ GDK_GL_ACCUM_BLUE_SIZE = 16, /* number of blue accum bits */
+ GDK_GL_ACCUM_ALPHA_SIZE = 17, /* number of alpha accum bits */
+
+ /*
+ * FBConfig-specific attributes.
+ * [ GLX 1.3 and later ]
+ */
+ GDK_GL_CONFIG_CAVEAT = 0x20,
+ GDK_GL_X_VISUAL_TYPE = 0x22,
+ GDK_GL_TRANSPARENT_TYPE = 0x23,
+ GDK_GL_TRANSPARENT_INDEX_VALUE = 0x24,
+ GDK_GL_TRANSPARENT_RED_VALUE = 0x25,
+ GDK_GL_TRANSPARENT_GREEN_VALUE = 0x26,
+ GDK_GL_TRANSPARENT_BLUE_VALUE = 0x27,
+ GDK_GL_TRANSPARENT_ALPHA_VALUE = 0x28,
+ GDK_GL_DRAWABLE_TYPE = 0x8010,
+ GDK_GL_RENDER_TYPE = 0x8011,
+ GDK_GL_X_RENDERABLE = 0x8012,
+ GDK_GL_FBCONFIG_ID = 0x8013,
+ GDK_GL_MAX_PBUFFER_WIDTH = 0x8016,
+ GDK_GL_MAX_PBUFFER_HEIGHT = 0x8017,
+ GDK_GL_MAX_PBUFFER_PIXELS = 0x8018,
+ GDK_GL_VISUAL_ID = 0x800B,
+ GDK_GL_SCREEN = 0x800C,
+
+ /*
+ * Multisampling configuration attributes.
+ * [ GLX 1.4 and later ]
+ */
+ GDK_GL_SAMPLE_BUFFERS = 100000,
+ GDK_GL_SAMPLES = 100001
+
+} GdkGLConfigAttrib;
+
+/*
+ * Generic "don't care" value.
+ * [ GLX 1.3 and later ]
+ */
+#define GDK_GL_DONT_CARE 0xFFFFFFFF
+
+/*
+ * "none" value.
+ * [ GLX 1.3 and later ]
+ */
+#define GDK_GL_NONE 0x8000
+
+/*
+ * GLX_CONFIG_CAVEAT attribute values.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_CONFIG_CAVEAT_DONT_CARE = 0xFFFFFFFF, /* GDK_GL_DONT_CARE */
+ GDK_GL_CONFIG_CAVEAT_NONE = 0x8000, /* GDK_GL_NONE */
+ GDK_GL_SLOW_CONFIG = 0x8001,
+ GDK_GL_NON_CONFORMANT_CONFIG = 0x800D
+} GdkGLConfigCaveat;
+
+/*
+ * GLX_X_VISUAL_TYPE attribute values.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_VISUAL_TYPE_DONT_CARE = 0xFFFFFFFF, /* GDK_GL_DONT_CARE */
+ GDK_GL_TRUE_COLOR = 0x8002,
+ GDK_GL_DIRECT_COLOR = 0x8003,
+ GDK_GL_PSEUDO_COLOR = 0x8004,
+ GDK_GL_STATIC_COLOR = 0x8005,
+ GDK_GL_GRAY_SCALE = 0x8006,
+ GDK_GL_STATIC_GRAY = 0x8007
+} GdkGLVisualType;
+
+/*
+ * GLX_TRANSPARENT_TYPE attribute values.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_TRANSPARENT_NONE = 0x8000, /* GDK_GL_NONE */
+ GDK_GL_TRANSPARENT_RGB = 0x8008,
+ GDK_GL_TRANSPARENT_INDEX = 0x8009
+} GdkGLTransparentType;
+
+/*
+ * GLX_DRAWABLE_TYPE bits.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_WINDOW_BIT = 1 << 0, /* 0x00000001 */
+ GDK_GL_PIXMAP_BIT = 1 << 1, /* 0x00000002 */
+ GDK_GL_PBUFFER_BIT = 1 << 2 /* 0x00000004 */
+} GdkGLDrawableTypeMask;
+
+/*
+ * GLX_RENDER_TYPE bits.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_RGBA_BIT = 1 << 0, /* 0x00000001 */
+ GDK_GL_COLOR_INDEX_BIT = 1 << 1 /* 0x00000002 */
+} GdkGLRenderTypeMask;
+
+/*
+ * Buffer mask bits.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_FRONT_LEFT_BUFFER_BIT = 1 << 0, /* 0x00000001 */
+ GDK_GL_FRONT_RIGHT_BUFFER_BIT = 1 << 1, /* 0x00000002 */
+ GDK_GL_BACK_LEFT_BUFFER_BIT = 1 << 2, /* 0x00000004 */
+ GDK_GL_BACK_RIGHT_BUFFER_BIT = 1 << 3, /* 0x00000008 */
+ GDK_GL_AUX_BUFFERS_BIT = 1 << 4, /* 0x00000010 */
+ GDK_GL_DEPTH_BUFFER_BIT = 1 << 5, /* 0x00000020 */
+ GDK_GL_STENCIL_BUFFER_BIT = 1 << 6, /* 0x00000040 */
+ GDK_GL_ACCUM_BUFFER_BIT = 1 << 7 /* 0x00000080 */
+} GdkGLBufferMask;
+
+/*
+ * Error return values from glXGetConfig. Success is indicated by
+ * a value of 0.
+ */
+typedef enum
+{
+ GDK_GL_BAD_SCREEN = 1, /* screen # is bad */
+ GDK_GL_BAD_ATTRIBUTE = 2, /* attribute to get is bad */
+ GDK_GL_NO_EXTENSION = 3, /* no glx extension on server */
+ GDK_GL_BAD_VISUAL = 4, /* visual # not known by GLX */
+ GDK_GL_BAD_CONTEXT = 5, /* returned only by import_context EXT? */
+ GDK_GL_BAD_VALUE = 6, /* returned only by glXSwapIntervalSGI? */
+ GDK_GL_BAD_ENUM = 7 /* unused? */
+} GdkGLConfigError;
+
+/*
+ * glXCreateNewContext render_type attribute values.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_RGBA_TYPE = 0x8014,
+ GDK_GL_COLOR_INDEX_TYPE = 0x8015
+} GdkGLRenderType;
+
+/*
+ * glXQueryDrawable attributes.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_PRESERVED_CONTENTS = 0x801B,
+ GDK_GL_LARGEST_PBUFFER = 0x801C,
+ GDK_GL_WIDTH = 0x801D,
+ GDK_GL_HEIGHT = 0x801E,
+ GDK_GL_EVENT_MASK = 0x801F
+} GdkGLDrawableAttrib;
+
+/*
+ * glXCreatePbuffer attributes.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_PBUFFER_PRESERVED_CONTENTS = 0x801B, /* GDK_GL_PRESERVED_CONTENTS */
+ GDK_GL_PBUFFER_LARGEST_PBUFFER = 0x801C, /* GDK_GL_LARGEST_PBUFFER */
+ GDK_GL_PBUFFER_HEIGHT = 0x8040,
+ GDK_GL_PBUFFER_WIDTH = 0x8041
+} GdkGLPbufferAttrib;
+
+/*
+ * glXSelectEvent event mask bits.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_PBUFFER_CLOBBER_MASK = 1 << 27 /* 0x08000000 */
+} GdkGLEventMask;
+
+/*
+ * GLXPbufferClobberEvent event_type values.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_DAMAGED = 0x8020,
+ GDK_GL_SAVED = 0x8021
+} GdkGLEventType;
+
+/*
+ * GLXPbufferClobberEvent draw_type values.
+ * [ GLX 1.3 and later ]
+ */
+typedef enum
+{
+ GDK_GL_WINDOW = 0x8022,
+ GDK_GL_PBUFFER = 0x8023
+} GdkGLDrawableType;
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* __GDK_GL_TOKENS_H__ */