diff options
Diffstat (limited to 'nx-X11/extras/Mesa/include/GL/uglmesa.h')
-rw-r--r-- | nx-X11/extras/Mesa/include/GL/uglmesa.h | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/nx-X11/extras/Mesa/include/GL/uglmesa.h b/nx-X11/extras/Mesa/include/GL/uglmesa.h new file mode 100644 index 000000000..7ef584350 --- /dev/null +++ b/nx-X11/extras/Mesa/include/GL/uglmesa.h @@ -0,0 +1,155 @@ +/* uglmesa.h - Public header UGL/Mesa */ + +/* Copyright (C) 2001 by Wind River Systems, Inc */ + +/* + * Mesa 3-D graphics library + * Version: 4.0 + * + * The MIT License + * 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 AUTHORS OR COPYRIGHT 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. + */ + +/* + * Author: + * Stephane Raimbault <stephane.raimbault@windriver.com> + */ + +#ifndef UGLMESA_H +#define UGLMESA_H + +#ifdef __cplusplus +extern "C" { +#endif + +#define UGL_MESA_MAJOR_VERSION 4 +#define UGL_MESA_MINOR_VERSION 0 + +#include <GL/gl.h> +#include <ugl/ugl.h> + +/* + * Values for display mode of uglMesaCreateContext () + */ + +/* + * With these mask values, it's possible to test double buffer mode + * with UGL_MESA_DOUBLE mask + * + * SINGLE 0000 0001 + * DOUBLE 0000 0110 + * - SOFT 0000 0010 + * - HARD 0000 0100 + * WINDML 0001 0000 + * + * + */ +#define UGL_MESA_SINGLE 0x01 +#define UGL_MESA_DOUBLE 0x06 +#define UGL_MESA_DOUBLE_SOFTWARE 0x02 +#define UGL_MESA_DOUBLE_HARDWARE 0x04 + +#define UGL_MESA_WINDML_EXCLUSIVE 0x10 + +#define UGL_MESA_FULLSCREEN_WIDTH 0x0 +#define UGL_MESA_FULLSCREEN_HEIGHT 0x0 + +/* + * uglMesaPixelStore() parameters: + */ + +#define UGL_MESA_ROW_LENGTH 0x20 +#define UGL_MESA_Y_UP 0x21 + +/* + * Accepted by uglMesaGetIntegerv: + */ + +#define UGL_MESA_LEFT_X 0x01 +#define UGL_MESA_TOP_Y 0x02 +#define UGL_MESA_WIDTH 0x03 +#define UGL_MESA_HEIGHT 0x04 +#define UGL_MESA_DISPLAY_WIDTH 0x05 +#define UGL_MESA_DISPLAY_HEIGHT 0x06 +#define UGL_MESA_COLOR_FORMAT 0x07 +#define UGL_MESA_COLOR_MODEL 0x08 +#define UGL_MESA_PIXEL_FORMAT 0x09 +#define UGL_MESA_TYPE 0x0A +#define UGL_MESA_RGB 0x0B +#define UGL_MESA_COLOR_INDEXED 0x0C +#define UGL_MESA_SINGLE_BUFFER 0x0D +#define UGL_MESA_DOUBLE_BUFFER 0x0E +#define UGL_MESA_DOUBLE_BUFFER_SOFTWARE 0x0F +#define UGL_MESA_DOUBLE_BUFFER_HARDWARE 0x10 + +/* + * typedefs + */ + +typedef struct uglMesaContext * UGL_MESA_CONTEXT; + +UGL_MESA_CONTEXT uglMesaCreateNewContext (GLenum mode, + UGL_MESA_CONTEXT share_list); + +UGL_MESA_CONTEXT uglMesaCreateNewContextExt (GLenum mode, + GLint depth_bits, + GLint stencil_bits, + GLint accum_red_bits, + GLint accum_green_bits, + GLint accum_blue_bits, + GLint accum_alpha_bits, + UGL_MESA_CONTEXT share_list); + +GLboolean uglMesaMakeCurrentContext (UGL_MESA_CONTEXT umc, + GLsizei left, GLsizei top, + GLsizei width, GLsizei height); + +GLboolean uglMesaMoveWindow (GLsizei dx, GLsizei dy); + +GLboolean uglMesaMoveToWindow (GLsizei left, GLsizei top); + +GLboolean uglMesaResizeWindow (GLsizei dw, GLsizei dh); + +GLboolean uglMesaResizeToWindow (GLsizei width, GLsizei height); + +void uglMesaDestroyContext (void); + +UGL_MESA_CONTEXT uglMesaGetCurrentContext (void); + +void uglMesaSwapBuffers (void); + +void uglMesaPixelStore (GLint pname, GLint value); + +void uglMesaGetIntegerv (GLint pname, GLint *value); + +GLboolean uglMesaGetDepthBuffer (GLint *width, GLint *height, + GLint *bytesPerValue, void **buffer); + +GLboolean uglMesaGetColorBuffer (GLint *width, GLint *height, + GLint *format, void **buffer); + +GLboolean uglMesaSetColor (GLubyte index, GLfloat red, + GLfloat green, GLfloat blue); + +#ifdef __cplusplus +} +#endif + + +#endif |