+ /** Texture sampler and sampler view state.
+ * Note that we have arrays indexed by shader type. At this time
+ * we only handle vertex and geometry shaders in the draw module, but
+ * there may be more in the future (ex: hull and tessellation).
+ */
+ struct pipe_sampler_view *sampler_views[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_SAMPLER_VIEWS];
+ unsigned num_sampler_views[PIPE_SHADER_TYPES];
+ const struct pipe_sampler_state *samplers[PIPE_SHADER_TYPES][PIPE_MAX_SAMPLERS];
+ unsigned num_samplers[PIPE_SHADER_TYPES];
+
+ struct pipe_image_view *images[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_IMAGES];
+ unsigned num_images[PIPE_SHADER_TYPES];
+
+ struct pipe_query_data_pipeline_statistics statistics;
+ boolean collect_statistics;
+
+ float default_outer_tess_level[4];
+ float default_inner_tess_level[2];
+ bool collect_primgen;
+
+ struct draw_assembler *ia;
+
+ void *disk_cache_cookie;
+ void (*disk_cache_find_shader)(void *cookie,
+ struct lp_cached_code *cache,
+ unsigned char ir_sha1_cache_key[20]);
+ void (*disk_cache_insert_shader)(void *cookie,
+ struct lp_cached_code *cache,
+ unsigned char ir_sha1_cache_key[20]);