aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa/main/mtypes.h
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2014-01-10 23:39:19 +0100
committermarha <marha@users.sourceforge.net>2014-01-10 23:39:19 +0100
commitaaeb8bf497c82efabc4f9b27c319042c0e72d816 (patch)
tree0df2c4a5b027a07dd1e3bf8707c72f25fe71b4f1 /mesalib/src/mesa/main/mtypes.h
parentbe6e384aa4b97dc81b88ab5b04328c161828e760 (diff)
downloadvcxsrv-aaeb8bf497c82efabc4f9b27c319042c0e72d816.tar.gz
vcxsrv-aaeb8bf497c82efabc4f9b27c319042c0e72d816.tar.bz2
vcxsrv-aaeb8bf497c82efabc4f9b27c319042c0e72d816.zip
randrproto libfontenc mesa xserver git update 10 Jan 2014
xserver commit a92c6406e7f6c0b74fb1cb9361ad904facc0f722 libfontenc commit 0037a42107b952c9d903719615747e760e4e7247 randrproto commit 1755cbe0f501a86afe515f92bb24e417a1866092 mesa commit 532b1fecd93fd30d3b1b101b55fd2c6e074088ad
Diffstat (limited to 'mesalib/src/mesa/main/mtypes.h')
-rw-r--r--mesalib/src/mesa/main/mtypes.h57
1 files changed, 28 insertions, 29 deletions
diff --git a/mesalib/src/mesa/main/mtypes.h b/mesalib/src/mesa/main/mtypes.h
index f93bb5641..f23cd8118 100644
--- a/mesalib/src/mesa/main/mtypes.h
+++ b/mesalib/src/mesa/main/mtypes.h
@@ -393,6 +393,23 @@ typedef enum
/**
+ * Shader stages. Note that these will become 5 with tessellation.
+ *
+ * The order must match how shaders are ordered in the pipeline.
+ * The GLSL linker assumes that if i<j, then the j-th shader is
+ * executed later than the i-th shader.
+ */
+typedef enum
+{
+ MESA_SHADER_VERTEX = 0,
+ MESA_SHADER_GEOMETRY = 1,
+ MESA_SHADER_FRAGMENT = 2,
+} gl_shader_stage;
+
+#define MESA_SHADER_STAGES (MESA_SHADER_FRAGMENT + 1)
+
+
+/**
* Framebuffer configuration (aka visual / pixelformat)
* Note: some of these fields should be boolean, but it appears that
* code in drivers/dri/common/util.c requires int-sized fields.
@@ -2302,6 +2319,7 @@ struct gl_shader
* Must be the first field.
*/
GLenum Type;
+ gl_shader_stage Stage;
GLuint Name; /**< AKA the handle */
GLchar *Label; /**< GL_KHR_debug */
GLint RefCount; /**< Reference count */
@@ -2387,23 +2405,6 @@ struct gl_shader
};
-/**
- * Shader stages. Note that these will become 5 with tessellation.
- *
- * The order must match how shaders are ordered in the pipeline.
- * The GLSL linker assumes that if i<j, then the j-th shader is
- * executed later than the i-th shader.
- */
-typedef enum
-{
- MESA_SHADER_VERTEX = 0,
- MESA_SHADER_GEOMETRY = 1,
- MESA_SHADER_FRAGMENT = 2,
-} gl_shader_type;
-
-#define MESA_SHADER_TYPES (MESA_SHADER_FRAGMENT + 1)
-
-
struct gl_uniform_buffer_variable
{
char *Name;
@@ -2482,7 +2483,7 @@ struct gl_active_atomic_buffer
GLuint MinimumSize;
/** Shader stages making use of it. */
- GLboolean StageReferences[MESA_SHADER_TYPES];
+ GLboolean StageReferences[MESA_SHADER_STAGES];
};
/**
@@ -2620,7 +2621,7 @@ struct gl_shader_program
* This is used to maintain the Binding values of the stage's UniformBlocks[]
* and to answer the GL_UNIFORM_BLOCK_REFERENCED_BY_*_SHADER queries.
*/
- int *UniformBlockStageIndex[MESA_SHADER_TYPES];
+ int *UniformBlockStageIndex[MESA_SHADER_STAGES];
/**
* Map of active uniform names to locations
@@ -2650,7 +2651,7 @@ struct gl_shader_program
* \c MESA_SHADER_* defines. Entries for non-existent stages will be
* \c NULL.
*/
- struct gl_shader *_LinkedShaders[MESA_SHADER_TYPES];
+ struct gl_shader *_LinkedShaders[MESA_SHADER_STAGES];
};
@@ -3007,12 +3008,11 @@ struct gl_framebuffer
struct gl_renderbuffer *_ColorReadBuffer;
/**
- * The number of layers in the framebuffer, or 0 if the framebuffer is not
- * layered. For cube maps, this value is 6. For cube map arrays, this
- * value is the "depth" value passed to TexImage3D (always a multiple of
- * 6).
+ * The maximum number of layers in the framebuffer, or 0 if the framebuffer
+ * is not layered. For cube maps and cube map arrays, each cube face
+ * counts as a layer.
*/
- GLuint NumLayers;
+ GLuint MaxNumLayers;
/** Delete this framebuffer */
void (*Delete)(struct gl_framebuffer *fb);
@@ -3134,9 +3134,7 @@ struct gl_constants
GLuint MaxViewportWidth, MaxViewportHeight;
- struct gl_program_constants VertexProgram; /**< GL_ARB_vertex_program */
- struct gl_program_constants FragmentProgram; /**< GL_ARB_fragment_program */
- struct gl_program_constants GeometryProgram; /**< GL_ARB_geometry_shader4 */
+ struct gl_program_constants Program[MESA_SHADER_STAGES];
GLuint MaxProgramMatrices;
GLuint MaxProgramMatrixStackDepth;
@@ -3435,6 +3433,7 @@ struct gl_extensions
/* vendor extensions */
GLboolean AMD_performance_monitor;
GLboolean AMD_seamless_cubemap_per_texture;
+ GLboolean AMD_shader_trinary_minmax;
GLboolean AMD_vertex_shader_layer;
GLboolean APPLE_object_purgeable;
GLboolean ATI_envmap_bumpmap;
@@ -3906,7 +3905,7 @@ struct gl_context
struct gl_ati_fragment_shader_state ATIFragmentShader;
struct gl_shader_state Shader; /**< GLSL shader object state */
- struct gl_shader_compiler_options ShaderCompilerOptions[MESA_SHADER_TYPES];
+ struct gl_shader_compiler_options ShaderCompilerOptions[MESA_SHADER_STAGES];
struct gl_query_state Query; /**< occlusion, timer queries */