radeonsi: Use tgsi_util_get_texture_coord_dim()
[mesa.git] / src / gallium / drivers / softpipe / sp_state.h
index 243f7aab8ba29ffbfde32482e3297e4c84f38439..bf8370ecfbe94f9cd055f625fa1093af4202ed09 100644 (file)
@@ -62,7 +62,7 @@ struct vertex_info;
 
 struct sp_fragment_shader_variant_key
 {
-   int foo;  /* XXX temporary */
+   boolean polygon_stipple;
 };
 
 
@@ -72,6 +72,8 @@ struct sp_fragment_shader_variant
    struct sp_fragment_shader_variant_key key;
    struct tgsi_shader_info info;
 
+   unsigned stipple_sampler_unit;
+
    /* See comments about this elsewhere */
 #if 0
    struct draw_fragment_shader *draw_shader;
@@ -79,14 +81,15 @@ struct sp_fragment_shader_variant
 
    void (*prepare)(const struct sp_fragment_shader_variant *shader,
                   struct tgsi_exec_machine *machine,
-                  struct tgsi_sampler **samplers);
+                  struct tgsi_sampler *sampler);
 
    unsigned (*run)(const struct sp_fragment_shader_variant *shader,
                   struct tgsi_exec_machine *machine,
                   struct quad_header *quad);
 
    /* Deletes this instance of the object */
-   void (*delete)(struct sp_fragment_shader_variant *shader);
+   void (*delete)(struct sp_fragment_shader_variant *shader,
+                  struct tgsi_exec_machine *machine);
 
    struct sp_fragment_shader_variant *next;
 };
@@ -120,7 +123,7 @@ struct sp_velems_state {
 };
 
 struct sp_so_state {
-   struct pipe_stream_output_state base;
+   struct pipe_stream_output_info base;
 };
 
 
@@ -150,20 +153,19 @@ softpipe_set_framebuffer_state(struct pipe_context *,
                                const struct pipe_framebuffer_state *);
 
 void
-softpipe_update_derived(struct softpipe_context *softpipe);
+softpipe_update_derived(struct softpipe_context *softpipe, unsigned prim);
 
 void
-softpipe_draw_vbo(struct pipe_context *pipe,
-                  const struct pipe_draw_info *info);
+softpipe_set_sampler_views(struct pipe_context *pipe,
+                           unsigned shader,
+                           unsigned start,
+                           unsigned num,
+                           struct pipe_sampler_view **views);
 
-void
-softpipe_draw_stream_output(struct pipe_context *pipe, unsigned mode);
 
 void
-softpipe_map_transfers(struct softpipe_context *sp);
-
-void
-softpipe_unmap_transfers(struct softpipe_context *sp);
+softpipe_draw_vbo(struct pipe_context *pipe,
+                  const struct pipe_draw_info *info);
 
 void
 softpipe_map_texture_surfaces(struct softpipe_context *sp);
@@ -179,6 +181,12 @@ struct vertex_info *
 softpipe_get_vbuf_vertex_info(struct softpipe_context *softpipe);
 
 
+struct sp_fragment_shader_variant *
+softpipe_find_fs_variant(struct softpipe_context *softpipe,
+                         struct sp_fragment_shader *fs,
+                         const struct sp_fragment_shader_variant_key *key);
+
+
 struct sp_fragment_shader_variant *
 softpipe_find_fs_variant(struct softpipe_context *softpipe,
                          struct sp_fragment_shader *fs,