2 * Mesa 3-D graphics library GGI bindings (GGIGL [giggle])
4 * Copyright (C) 1995-2000 Brian Paul
5 * Copyright (C) 1998 Uwe Maurer
6 * Copyrigth (C) 2001 Filip Spacek
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Library General Public License for more details.
18 * You should have received a copy of the GNU Library General Public
19 * License along with this library; if not, write to the Free
20 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
27 #define GGIMESA_MAJOR_VERSION 4
28 #define GGIMESA_MINOR_VERSION 0
37 typedef struct ggi_mesa_context
*ggi_mesa_context_t
;
40 * Initialize Mesa GGI extension
42 int ggiMesaInit(void);
44 * Clean up Mesa GGI exension
46 int ggiMesaExit(void);
49 * Attach Mesa GGI extension to the visual 'vis'
51 int ggiMesaAttach(ggi_visual_t vis
);
53 * Detach Mesa GGI extension from the visual 'vis'
55 int ggiMesaDetach(ggi_visual_t vis
);
57 int ggiMesaExtendVisual(ggi_visual_t vis
, GLboolean alpha_flag
,
58 GLboolean stereo_flag
, GLint depth_size
,
59 GLint stencil_size
, GLint accum_red_size
,
60 GLint accum_green_size
, GLint accum_blue_size
,
61 GLint accum_alpha_size
, GLint num_samples
);
64 * Create a new context capable of displaying on the visual vis.
66 ggi_mesa_context_t
ggiMesaCreateContext(ggi_visual_t vis
);
68 * Destroy the context 'ctx'
70 void ggiMesaDestroyContext(ggi_mesa_context_t ctx
);
73 * Make context 'ctx' the current context and bind it to visual 'vis'.
74 * Note that the context must have been created with respect to that visual.
76 void ggiMesaMakeCurrent(ggi_mesa_context_t ctx
, ggi_visual_t vis
);
78 void ggiMesaSwapBuffers(void);