X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fglsl%2Fglsl_types.h;h=87f57e7c756425f20694ffd841e205a07ce6f143;hb=8d5f3cef795428d7a95120416122a39c10cff11c;hp=61bf5e0cfd24779fee3913817214bf6fd13d1abd;hpb=497baf4e4a6a0a2f247c7bfb9bf69a2b93c2c19f;p=mesa.git diff --git a/src/glsl/glsl_types.h b/src/glsl/glsl_types.h index 61bf5e0cfd2..87f57e7c756 100644 --- a/src/glsl/glsl_types.h +++ b/src/glsl/glsl_types.h @@ -70,7 +70,7 @@ struct glsl_type { GLenum gl_type; glsl_base_type base_type; - unsigned sampler_dimensionality:3; + unsigned sampler_dimensionality:3; /**< \see glsl_sampler_dim */ unsigned sampler_shadow:1; unsigned sampler_array:1; unsigned sampler_type:2; /**< Type of data returned using this sampler. @@ -295,6 +295,12 @@ struct glsl_type { return base_type == GLSL_TYPE_SAMPLER; } + /** + * Query whether or not type is a sampler, or for struct and array + * types, contains a sampler. + */ + bool contains_sampler() const; + /** * Query whether or not a type is an array */ @@ -427,6 +433,7 @@ private: /*@{*/ static const glsl_type _error_type; static const glsl_type _void_type; + static const glsl_type _sampler3D_type; static const glsl_type builtin_core_types[]; static const glsl_type builtin_structure_types[]; static const glsl_type builtin_110_deprecated_structure_types[]; @@ -453,6 +460,7 @@ private: static void generate_130_types(glsl_symbol_table *); static void generate_ARB_texture_rectangle_types(glsl_symbol_table *, bool); static void generate_EXT_texture_array_types(glsl_symbol_table *, bool); + static void generate_OES_texture_3D_types(glsl_symbol_table *, bool); /*@}*/ /**