-/* $Id: config.h,v 1.12 2000/05/07 20:37:40 brianp Exp $ */
+/* $Id: config.h,v 1.38 2002/05/27 17:04:52 brianp Exp $ */
/*
* Mesa 3-D graphics library
- * Version: 3.3
- *
- * Copyright (C) 1999-2000 Brian Paul All Rights Reserved.
- *
+ * Version: 4.1
+ *
+ * Copyright (C) 1999-2001 Brian Paul All Rights Reserved.
+ *
* 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
/* Maximum color matrix stack depth: */
#define MAX_COLOR_STACK_DEPTH 4
+/* Vertex program matrix stacks: */
+#define MAX_PROGRAM_MATRICES 8
+#define MAX_PROGRAM_STACK_DEPTH 4
+
/* Maximum attribute stack depth: */
#define MAX_ATTRIB_STACK_DEPTH 16
/* Min and Max point sizes and granularity */
#define MIN_POINT_SIZE 1.0
-#define MAX_POINT_SIZE 10.0
+#define MAX_POINT_SIZE 20.0
#define POINT_SIZE_GRANULARITY 0.1
/* Min and Max line widths and granularity */
/* Max texture palette / color table size */
#define MAX_COLOR_TABLE_SIZE 256
-/* Number of texture levels */
+/* Number of 1D/2D texture mipmap levels */
#define MAX_TEXTURE_LEVELS 12
+/* Number of 3D texture mipmap levels */
+#define MAX_3D_TEXTURE_LEVELS 8
+
+/* Number of cube texture mipmap levels */
+#define MAX_CUBE_TEXTURE_LEVELS 12
+
/* Number of texture units - GL_ARB_multitexture */
-#define MAX_TEXTURE_UNITS 2
+#define MAX_TEXTURE_UNITS 8
-/* Maximum viewport size: */
-#define MAX_WIDTH 1600
-#define MAX_HEIGHT 1200
+/* Maximum viewport/image size: */
+#define MAX_WIDTH 2048
+#define MAX_HEIGHT 2048
/* Maxmimum size for CVA. May be overridden by the drivers. */
#define MAX_ARRAY_LOCK_SIZE 3000
#define HISTOGRAM_TABLE_SIZE 256
/* Max convolution filter sizes */
-#define MAX_CONVOLUTION_WIDTH 5
-#define MAX_CONVOLUTION_HEIGHT 5
+#define MAX_CONVOLUTION_WIDTH 9
+#define MAX_CONVOLUTION_HEIGHT 9
+
+/* GL_ARB_texture_compression */
+#define MAX_COMPRESSED_TEXTURE_FORMATS 25
+
+/* GL_EXT_texture_filter_anisotropic */
+#define MAX_TEXTURE_MAX_ANISOTROPY 16.0
+
+/* GL_EXT_texture_lod_bias */
+#define MAX_TEXTURE_LOD_BIAS 4.0
+
/*
/*
- * Bits per accumulation buffer color component: 8 or 16
+ * Bits per accumulation buffer color component: 8, 16 or 32
*/
#define ACCUM_BITS 16
/*
- * Bits per depth buffer value: 16 or 32 (GLushort or GLuint)
- * gl_create_visual() can select any depth in [0, 32].
+ * Bits per depth buffer value. Any reasonable value up to 31 will
+ * work. 32 doesn't work because of integer overflow problems in the
+ * rasterizer code.
*/
+#ifndef DEFAULT_SOFTWARE_DEPTH_BITS
#define DEFAULT_SOFTWARE_DEPTH_BITS 16
+#endif
+#if DEFAULT_SOFTWARE_DEPTH_BITS <= 16
#define DEFAULT_SOFTWARE_DEPTH_TYPE GLushort
+#else
+#define DEFAULT_SOFTWARE_DEPTH_TYPE GLuint
+#endif
/*
- * Bits per color channel (must be 8 at this time!)
+ * Bits per color channel: 8, 16 or 32
*/
+#ifndef CHAN_BITS
#define CHAN_BITS 8
-#define CHAN_MAX ((1 << CHAN_BITS) - 1)
-#define CHAN_MAXF ((GLfloat) CHAN_MAX)
+#endif
/*
#define ACOMP 3
-
-/* Vertex buffer size. KW: no restrictions on the divisibility of
- * this number, though things may go better for you if you choose a
- * value of 12n + 3.
- */
-#define VB_START 3
-
-#define VB_MAX (216 + VB_START)
-
-
-
-/*
- * Actual vertex buffer size.
- *
- * Arrays must also accomodate new vertices from clipping, and
- * potential overflow from primitives which don't fit into neatly into
- * VB_MAX vertices. (This only happens when mixed primitives are
- * sharing the vb).
- */
-#define VB_MAX_CLIPPED_VERTS ((2 * (6 + MAX_CLIP_PLANES))+1)
-#define VB_SIZE (VB_MAX + VB_MAX_CLIPPED_VERTS)
-
-
-
-typedef struct gl_context GLcontext;
-
-extern void
-gl_read_config_file( struct gl_context *ctx );
-
-extern void
-gl_register_config_var(const char *name, void (*notify)( const char *, int ));
-
-#endif
+#endif /* CONFIG_H */