draw_so_emit_tmp.h revision 94d256591d83ac1330f7237e865784618d124d09
1#define FUNC_VARS \ 2 struct pt_so_emit *so, \ 3 const struct draw_prim_info *input_prims, \ 4 const struct draw_vertex_info *input_verts, \ 5 unsigned start, \ 6 unsigned count 7 8#define FUNC_ENTER \ 9 /* declare more local vars */ \ 10 struct draw_context *draw = so->draw; \ 11 const unsigned prim = input_prims->prim; \ 12 const boolean last_vertex_last = \ 13 !(draw->rasterizer->flatshade && \ 14 draw->rasterizer->flatshade_first); \ 15 do { \ 16 debug_assert(input_prims->primitive_count == 1); \ 17 switch (prim) { \ 18 case PIPE_PRIM_LINES_ADJACENCY: \ 19 case PIPE_PRIM_LINE_STRIP_ADJACENCY: \ 20 case PIPE_PRIM_TRIANGLES_ADJACENCY: \ 21 case PIPE_PRIM_TRIANGLE_STRIP_ADJACENCY: \ 22 debug_assert(!"unexpected primitive type in stream output"); \ 23 return; \ 24 default: \ 25 break; \ 26 } \ 27 } while (0) \ 28 29#define POINT(i0) so_point(so,i0) 30#define LINE(flags,i0,i1) so_line(so,i0,i1) 31#define TRIANGLE(flags,i0,i1,i2) so_tri(so,i0,i1,i2) 32 33#include "draw_decompose_tmp.h" 34