Remove remnants of 'intel' from active state tracker code.
[mesa.git] / src / mesa / pipe / softpipe / sp_state_sampler.c
index 6b422acfb6c958463111c7d5f2e4f33fc7087bc8..e71b9159e3f4b2abf616120ab82305984e13f794 100644 (file)
 /* Authors:
  *  Brian Paul
  */
-#include "imports.h"
 
+#include "pipe/p_util.h"
 #include "sp_context.h"
 #include "sp_state.h"
-#include "sp_draw.h"
+#include "sp_tile_cache.h"
 
 
+void *
+softpipe_create_sampler_state(struct pipe_context *pipe,
+                              const struct pipe_sampler_state *sampler)
+{
+   struct pipe_sampler_state *state = MALLOC( sizeof(struct pipe_sampler_state) );
+   memcpy(state, sampler, sizeof(struct pipe_sampler_state));
+   return state;
+}
+
+void
+softpipe_bind_sampler_state(struct pipe_context *pipe,
+                            unsigned unit, void *sampler)
+{
+   struct softpipe_context *softpipe = softpipe_context(pipe);
+
+   assert(unit < PIPE_MAX_SAMPLERS);
+   softpipe->sampler[unit] = (struct pipe_sampler_state *)sampler;
+
+   softpipe->dirty |= SP_NEW_SAMPLER;
+}
+
+
+void
+softpipe_delete_sampler_state(struct pipe_context *pipe,
+                              void *sampler)
+{
+   FREE( sampler );
+}
+
 
 void
-softpipe_set_sampler_state(struct pipe_context *pipe,
-                           GLuint unit,
-                           const struct pipe_sampler_state *sampler)
+softpipe_set_texture_state(struct pipe_context *pipe,
+                           unsigned unit,
+                           struct pipe_texture *texture)
 {
    struct softpipe_context *softpipe = softpipe_context(pipe);
 
-   softpipe->sampler[unit] = *sampler;
+   assert(unit < PIPE_MAX_SAMPLERS);
+   softpipe->texture[unit] = (struct softpipe_texture *)texture;  /* ptr, not struct */
+
+   sp_tile_cache_set_texture(softpipe->tex_cache[unit], texture);
+
+   softpipe->dirty |= SP_NEW_TEXTURE;
+}
+
 
-   softpipe->dirty |= G_NEW_SAMPLER;
+void
+softpipe_set_sampler_units(struct pipe_context *pipe,
+                           uint num_samplers, const uint *units )
+{
+   struct softpipe_context *softpipe = softpipe_context(pipe);
+   uint i;
+   for (i = 0; i < num_samplers; i++)
+      softpipe->sampler_units[i] = units[i];
+   softpipe->dirty |= SP_NEW_SAMPLER;
 }
+
+