summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/llvmpipe/lp_setup.h
diff options
context:
space:
mode:
authorKeith Whitwell <keithw@vmware.com>2010-01-06 16:44:43 +0000
committerKeith Whitwell <keithw@vmware.com>2010-01-06 16:44:43 +0000
commit5ce0380a0f585b9e1fb616b749f7fd18a8afada1 (patch)
tree0c7ba3835c94a8fe7c9c392c387209a3f5350a21 /src/gallium/drivers/llvmpipe/lp_setup.h
parent6a7b6a530dd7740457d4bdd3b804c6eabff4e1b3 (diff)
llvmpipe: merge setup and draw vbuf submodules
The setup tiling engine is now plugged directly into the draw module as a rendering backend. Removed a couple of layering violations such that the setup code no longer reaches out into the surrounding llvmpipe state or context.
Diffstat (limited to 'src/gallium/drivers/llvmpipe/lp_setup.h')
-rw-r--r--src/gallium/drivers/llvmpipe/lp_setup.h34
1 files changed, 15 insertions, 19 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_setup.h b/src/gallium/drivers/llvmpipe/lp_setup.h
index 5c606e86af..a6120fcbe4 100644
--- a/src/gallium/drivers/llvmpipe/lp_setup.h
+++ b/src/gallium/drivers/llvmpipe/lp_setup.h
@@ -28,6 +28,10 @@
#define LP_SETUP_H
#include "pipe/p_compiler.h"
+#include "lp_jit.h"
+
+struct draw_context;
+struct vertex_info;
enum lp_interp {
LP_INTERP_CONSTANT,
@@ -58,7 +62,8 @@ struct lp_fragment_shader;
struct lp_jit_context;
struct setup_context *
-lp_setup_create( struct pipe_screen *screen );
+lp_setup_create( struct pipe_screen *screen,
+ struct draw_context *draw );
void
lp_setup_clear(struct setup_context *setup,
@@ -72,22 +77,6 @@ lp_setup_fence( struct setup_context *setup );
void
-lp_setup_tri(struct setup_context *setup,
- const float (*v0)[4],
- const float (*v1)[4],
- const float (*v2)[4]);
-
-void
-lp_setup_line(struct setup_context *setup,
- const float (*v0)[4],
- const float (*v1)[4]);
-
-void
-lp_setup_point( struct setup_context *setup,
- const float (*v0)[4] );
-
-
-void
lp_setup_flush( struct setup_context *setup,
unsigned flags );
@@ -107,8 +96,8 @@ lp_setup_set_fs_inputs( struct setup_context *setup,
unsigned nr );
void
-lp_setup_set_fs( struct setup_context *setup,
- struct lp_fragment_shader *fs );
+lp_setup_set_fs_function( struct setup_context *setup,
+ lp_jit_frag_func jit_function );
void
lp_setup_set_fs_constants(struct setup_context *setup,
@@ -131,6 +120,13 @@ boolean
lp_setup_is_texture_referenced( struct setup_context *setup,
const struct pipe_texture *texture );
+void
+lp_setup_set_flatshade_first( struct setup_context *setup,
+ boolean flatshade_first );
+
+void
+lp_setup_set_vertex_info( struct setup_context *setup,
+ struct vertex_info *info );
void
lp_setup_destroy( struct setup_context *setup );