projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa into pipe-video
[mesa.git]
/
src
/
gallium
/
drivers
/
softpipe
/
sp_context.h
diff --git
a/src/gallium/drivers/softpipe/sp_context.h
b/src/gallium/drivers/softpipe/sp_context.h
index be4613b6228100d2a46e6c1153b8c2cbc303b161..92607874b60912f4f0d3551be46b1d2615a87cfe 100644
(file)
--- a/
src/gallium/drivers/softpipe/sp_context.h
+++ b/
src/gallium/drivers/softpipe/sp_context.h
@@
-38,6
+38,10
@@
#include "sp_quad_pipe.h"
#include "sp_quad_pipe.h"
+/** Do polygon stipple in the driver here, or in the draw module? */
+#define DO_PSTIPPLE_IN_DRAW_MODULE 1
+
+
struct softpipe_vbuf_render;
struct draw_context;
struct draw_stage;
struct softpipe_vbuf_render;
struct draw_context;
struct draw_stage;
@@
-45,6
+49,7
@@
struct softpipe_tile_cache;
struct softpipe_tex_tile_cache;
struct sp_fragment_shader;
struct sp_vertex_shader;
struct softpipe_tex_tile_cache;
struct sp_fragment_shader;
struct sp_vertex_shader;
+struct sp_velems_state;
struct softpipe_context {
struct softpipe_context {
@@
-59,25
+64,25
@@
struct softpipe_context {
struct sp_fragment_shader *fs;
struct sp_vertex_shader *vs;
struct sp_geometry_shader *gs;
struct sp_fragment_shader *fs;
struct sp_vertex_shader *vs;
struct sp_geometry_shader *gs;
+ struct sp_velems_state *velems;
/** Other rendering state */
struct pipe_blend_color blend_color;
/** Other rendering state */
struct pipe_blend_color blend_color;
+ struct pipe_stencil_ref stencil_ref;
struct pipe_clip_state clip;
struct pipe_clip_state clip;
- struct pipe_
buffer
*constants[PIPE_SHADER_TYPES][PIPE_MAX_CONSTANT_BUFFERS];
+ struct pipe_
resource
*constants[PIPE_SHADER_TYPES][PIPE_MAX_CONSTANT_BUFFERS];
struct pipe_framebuffer_state framebuffer;
struct pipe_poly_stipple poly_stipple;
struct pipe_scissor_state scissor;
struct pipe_framebuffer_state framebuffer;
struct pipe_poly_stipple poly_stipple;
struct pipe_scissor_state scissor;
- struct pipe_
texture *texture
[PIPE_MAX_SAMPLERS];
- struct pipe_
texture *vertex_texture
s[PIPE_MAX_VERTEX_SAMPLERS];
+ struct pipe_
sampler_view *sampler_views
[PIPE_MAX_SAMPLERS];
+ struct pipe_
sampler_view *vertex_sampler_view
s[PIPE_MAX_VERTEX_SAMPLERS];
struct pipe_viewport_state viewport;
struct pipe_vertex_buffer vertex_buffer[PIPE_MAX_ATTRIBS];
struct pipe_viewport_state viewport;
struct pipe_vertex_buffer vertex_buffer[PIPE_MAX_ATTRIBS];
- struct pipe_vertex_element vertex_element[PIPE_MAX_ATTRIBS];
unsigned num_samplers;
unsigned num_samplers;
- unsigned num_
texture
s;
+ unsigned num_
sampler_view
s;
unsigned num_vertex_samplers;
unsigned num_vertex_samplers;
- unsigned num_vertex_textures;
- unsigned num_vertex_elements;
+ unsigned num_vertex_sampler_views;
unsigned num_vertex_buffers;
unsigned dirty; /**< Mask of SP_NEW_x flags */
unsigned num_vertex_buffers;
unsigned dirty; /**< Mask of SP_NEW_x flags */
@@
-92,7
+97,7
@@
struct softpipe_context {
ubyte *mapped_vbuffer[PIPE_MAX_ATTRIBS];
/** Mapped constant buffers */
ubyte *mapped_vbuffer[PIPE_MAX_ATTRIBS];
/** Mapped constant buffers */
- void *mapped_constants[PIPE_SHADER_TYPES][PIPE_MAX_CONSTANT_BUFFERS];
+
const
void *mapped_constants[PIPE_SHADER_TYPES][PIPE_MAX_CONSTANT_BUFFERS];
/** Vertex format */
struct vertex_info vertex_info;
/** Vertex format */
struct vertex_info vertex_info;
@@
-125,6
+130,7
@@
struct softpipe_context {
struct quad_stage *shade;
struct quad_stage *depth_test;
struct quad_stage *blend;
struct quad_stage *shade;
struct quad_stage *depth_test;
struct quad_stage *blend;
+ struct quad_stage *pstipple;
struct quad_stage *first; /**< points to one of the above stages */
} quad;
struct quad_stage *first; /**< points to one of the above stages */
} quad;
@@
-166,5
+172,8
@@
softpipe_context( struct pipe_context *pipe )
void
softpipe_reset_sampler_varients(struct softpipe_context *softpipe);
void
softpipe_reset_sampler_varients(struct softpipe_context *softpipe);
+struct pipe_context *
+softpipe_create_context( struct pipe_screen *, void *priv );
+
#endif /* SP_CONTEXT_H */
#endif /* SP_CONTEXT_H */