X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fdrivers%2Fdri%2Fi965%2Fbrw_draw.h;h=64ad9b5cd660fcbe8e9aa7f576240d05cf04a9bb;hb=ed65e6ef49e17e9cae93a8f98e2968346de2bc6e;hp=fb96813b70f56dfdbc8b00e9d7756cbfa743f0de;hpb=b2ff11618fa6036744d8ab12730865b3adf81765;p=mesa.git diff --git a/src/mesa/drivers/dri/i965/brw_draw.h b/src/mesa/drivers/dri/i965/brw_draw.h index fb96813b70f..64ad9b5cd66 100644 --- a/src/mesa/drivers/dri/i965/brw_draw.h +++ b/src/mesa/drivers/dri/i965/brw_draw.h @@ -1,56 +1,71 @@ - /************************************************************************** - * - * Copyright 2005 Tungsten Graphics, Inc., Cedar Park, Texas. +/* + * Copyright 2005 VMware, Inc. * All Rights Reserved. - * + * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the * "Software"), to deal in the Software without restriction, including * without limitation the rights to use, copy, modify, merge, publish, - * distribute, sub license, and/or sell copies of the Software, and to + * distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so, subject to * the following conditions: - * + * * The above copyright notice and this permission notice (including the * next paragraph) shall be included in all copies or substantial portions * of the Software. - * + * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. - * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL VMWARE AND/OR ITS SUPPLIERS BE LIABLE FOR * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - * - **************************************************************************/ + */ #ifndef BRW_DRAW_H #define BRW_DRAW_H #include "main/mtypes.h" /* for struct gl_context... */ -#include "vbo/vbo.h" +#include "intel_bufmgr.h" struct brw_context; +uint32_t * +brw_emit_vertex_buffer_state(struct brw_context *brw, + unsigned buffer_nr, + drm_intel_bo *bo, + unsigned start_offset, + unsigned end_offset, + unsigned stride, + unsigned step_rate, + uint32_t *__map); -void brw_draw_prims( struct gl_context *ctx, +#define EMIT_VERTEX_BUFFER_STATE(...) __map = \ + brw_emit_vertex_buffer_state(__VA_ARGS__, __map) + +void brw_draw_prims(struct gl_context *ctx, const struct _mesa_prim *prims, GLuint nr_prims, const struct _mesa_index_buffer *ib, GLboolean index_bounds_valid, GLuint min_index, GLuint max_index, - struct gl_transform_feedback_object *unused_tfb_object); + struct gl_transform_feedback_object *unused_tfb_object, + unsigned stream, + struct gl_buffer_object *indirect ); void brw_draw_init( struct brw_context *brw ); void brw_draw_destroy( struct brw_context *brw ); +void brw_prepare_shader_draw_parameters(struct brw_context *); + /* brw_primitive_restart.c */ GLboolean brw_handle_primitive_restart(struct gl_context *ctx, const struct _mesa_prim *prims, GLuint nr_prims, - const struct _mesa_index_buffer *ib); + const struct _mesa_index_buffer *ib, + struct gl_buffer_object *indirect); #endif