blob: 68f15eb3cbbd9f6135922fd4125c9a690d172269 [file] [log] [blame]
jtgafb833d1999-08-19 00:55:39 +00001/* $Id: fxmesa.h,v 1.1 1999/08/19 00:55:40 jtg Exp $ */
2
3/*
4 * Mesa 3-D graphics library
5 * Version: 3.1
6 * Copyright (C) 1995-1999 Brian Paul
7 *
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.
12 *
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.
17 *
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.
21 */
22
23
24/*
25 * $Log: fxmesa.h,v $
26 * Revision 1.1 1999/08/19 00:55:40 jtg
27 * Initial revision
28 *
29 * Revision 3.2 1999/01/03 02:46:31 brianp
30 * now using GLAPI and GLAPIENTRY keywords (Ted Jump)
31 *
32 * Revision 3.1 1998/04/01 03:00:28 brianp
33 * updated for v0.24 of 3Dfx/Glide driver
34 *
35 * Revision 3.0 1998/02/20 05:04:45 brianp
36 * initial rev
37 *
38 */
39
40
41/*
42 * FXMesa - 3Dfx Glide driver for Mesa. Contributed by David Bucciarelli
43 *
44 * NOTE: This version requires Glide 2.3 or later.
45 */
46
47
48#ifndef FXMESA_H
49#define FXMESA_H
50
51
52#include <glide.h>
53
54
55#ifdef __cplusplus
56extern "C" {
57#endif
58
59
60#define FXMESA_MAJOR_VERSION 3
61#define FXMESA_MINOR_VERSION 0
62
63
64/*
65 * Values for attribList parameter to fxMesaCreateContext():
66 */
67#define FXMESA_NONE 0 /* to terminate attribList */
68#define FXMESA_DOUBLEBUFFER 10
69#define FXMESA_ALPHA_SIZE 11 /* followed by an integer */
70#define FXMESA_DEPTH_SIZE 12 /* followed by an integer */
71#define FXMESA_STENCIL_SIZE 13 /* followed by an integer */
72#define FXMESA_ACCUM_SIZE 14 /* followed by an integer */
73
74
75
76typedef struct tfxMesaContext *fxMesaContext;
77
78
79#if defined (__BEOS__)
80#pragma export on
81#endif
82
83
84GLAPI fxMesaContext GLAPIENTRY fxMesaCreateContext(GLuint win, GrScreenResolution_t,
85 GrScreenRefresh_t,
86 const GLint attribList[]);
87
88GLAPI fxMesaContext GLAPIENTRY fxMesaCreateBestContext(GLuint win,
89 GLint width, GLint height,
90 const GLint attribList[]);
91GLAPI void GLAPIENTRY fxMesaDestroyContext(fxMesaContext ctx);
92
93GLAPI GLboolean GLAPIENTRY fxMesaSelectCurrentBoard(int n);
94
95GLAPI void GLAPIENTRY fxMesaMakeCurrent(fxMesaContext ctx);
96
97GLAPI fxMesaContext GLAPIENTRY fxMesaGetCurrentContext(void);
98
99GLAPI void GLAPIENTRY fxMesaSwapBuffers(void);
100
101GLAPI void GLAPIENTRY fxMesaSetNearFar(GLfloat nearVal, GLfloat farVal);
102
103GLAPI void GLAPIENTRY fxMesaUpdateScreenSize(fxMesaContext ctx);
104
105GLAPI int GLAPIENTRY fxQueryHardware(void);
106
107GLAPI void GLAPIENTRY fxCloseHardware(void);
108
109
110#if defined (__BEOS__)
111#pragma export off
112#endif
113
114
115#ifdef __cplusplus
116}
117#endif
118
119
120#endif