From fa6efbd27d1c725f38e960005d8806521bd58156 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sat, 31 Oct 2015 07:44:23 -0600 Subject: [PATCH] util/indices: replace #define tokens with enum type To ease debugging in gdb. Reviewed-by: Charmaine Lee --- src/gallium/auxiliary/indices/u_indices.c | 45 ++++----- src/gallium/auxiliary/indices/u_indices.h | 98 ++++++++++--------- .../auxiliary/indices/u_unfilled_indices.c | 34 ++++--- 3 files changed, 91 insertions(+), 86 deletions(-) diff --git a/src/gallium/auxiliary/indices/u_indices.c b/src/gallium/auxiliary/indices/u_indices.c index c25594b4b7a..436f8f008cb 100644 --- a/src/gallium/auxiliary/indices/u_indices.c +++ b/src/gallium/auxiliary/indices/u_indices.c @@ -68,17 +68,18 @@ static void translate_memcpy_uint( const void *in, * \param out_nr returns number of new vertices * \param out_translate returns the translation function to use by the caller */ -int u_index_translator( unsigned hw_mask, - unsigned prim, - unsigned in_index_size, - unsigned nr, - unsigned in_pv, - unsigned out_pv, - unsigned prim_restart, - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_translate_func *out_translate ) +enum indices_mode +u_index_translator(unsigned hw_mask, + unsigned prim, + unsigned in_index_size, + unsigned nr, + unsigned in_pv, + unsigned out_pv, + unsigned prim_restart, + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_translate_func *out_translate) { unsigned in_idx; unsigned out_idx; @@ -204,17 +205,17 @@ int u_index_translator( unsigned hw_mask, * \param out_nr returns new number of vertices to draw * \param out_generate returns pointer to the generator function */ -int u_index_generator( unsigned hw_mask, - unsigned prim, - unsigned start, - unsigned nr, - unsigned in_pv, - unsigned out_pv, - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_generate_func *out_generate ) - +enum indices_mode +u_index_generator(unsigned hw_mask, + unsigned prim, + unsigned start, + unsigned nr, + unsigned in_pv, + unsigned out_pv, + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_generate_func *out_generate) { unsigned out_idx; diff --git a/src/gallium/auxiliary/indices/u_indices.h b/src/gallium/auxiliary/indices/u_indices.h index e01201e4b04..4483eb81337 100644 --- a/src/gallium/auxiliary/indices/u_indices.h +++ b/src/gallium/auxiliary/indices/u_indices.h @@ -67,66 +67,68 @@ typedef void (*u_generate_func)( unsigned start, /* Return codes describe the translate/generate operation. Caller may * be able to reuse translated indices under some circumstances. */ -#define U_TRANSLATE_ERROR -1 -#define U_TRANSLATE_NORMAL 1 -#define U_TRANSLATE_MEMCPY 2 -#define U_GENERATE_LINEAR 3 -#define U_GENERATE_REUSABLE 4 -#define U_GENERATE_ONE_OFF 5 - +enum indices_mode { + U_TRANSLATE_ERROR = -1, + U_TRANSLATE_NORMAL = 1, + U_TRANSLATE_MEMCPY = 2, + U_GENERATE_LINEAR = 3, + U_GENERATE_REUSABLE= 4, + U_GENERATE_ONE_OFF = 5, +}; void u_index_init( void ); -int u_index_translator( unsigned hw_mask, - unsigned prim, - unsigned in_index_size, - unsigned nr, - unsigned in_pv, /* API */ - unsigned out_pv, /* hardware */ - unsigned prim_restart, - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_translate_func *out_translate ); +enum indices_mode +u_index_translator(unsigned hw_mask, + unsigned prim, + unsigned in_index_size, + unsigned nr, + unsigned in_pv, /* API */ + unsigned out_pv, /* hardware */ + unsigned prim_restart, + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_translate_func *out_translate); /* Note that even when generating it is necessary to know what the * API's PV is, as the indices generated will depend on whether it is * the same as hardware or not, and in the case of triangle strips, * whether it is first or last. */ -int u_index_generator( unsigned hw_mask, - unsigned prim, - unsigned start, - unsigned nr, - unsigned in_pv, /* API */ - unsigned out_pv, /* hardware */ - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_generate_func *out_generate ); +enum indices_mode +u_index_generator(unsigned hw_mask, + unsigned prim, + unsigned start, + unsigned nr, + unsigned in_pv, /* API */ + unsigned out_pv, /* hardware */ + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_generate_func *out_generate); void u_unfilled_init( void ); -int u_unfilled_translator( unsigned prim, - unsigned in_index_size, - unsigned nr, - unsigned unfilled_mode, - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_translate_func *out_translate ); - -int u_unfilled_generator( unsigned prim, - unsigned start, - unsigned nr, - unsigned unfilled_mode, - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_generate_func *out_generate ); - - - +enum indices_mode +u_unfilled_translator(unsigned prim, + unsigned in_index_size, + unsigned nr, + unsigned unfilled_mode, + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_translate_func *out_translate); + +enum indices_mode +u_unfilled_generator(unsigned prim, + unsigned start, + unsigned nr, + unsigned unfilled_mode, + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_generate_func *out_generate); #endif diff --git a/src/gallium/auxiliary/indices/u_unfilled_indices.c b/src/gallium/auxiliary/indices/u_unfilled_indices.c index 121877a60fb..fc974f8b946 100644 --- a/src/gallium/auxiliary/indices/u_unfilled_indices.c +++ b/src/gallium/auxiliary/indices/u_unfilled_indices.c @@ -111,14 +111,15 @@ static unsigned nr_lines( unsigned prim, -int u_unfilled_translator( unsigned prim, - unsigned in_index_size, - unsigned nr, - unsigned unfilled_mode, - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_translate_func *out_translate ) +enum indices_mode +u_unfilled_translator(unsigned prim, + unsigned in_index_size, + unsigned nr, + unsigned unfilled_mode, + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_translate_func *out_translate) { unsigned in_idx; unsigned out_idx; @@ -170,14 +171,15 @@ int u_unfilled_translator( unsigned prim, * different front/back fill modes, that can be handled with the * 'draw' module. */ -int u_unfilled_generator( unsigned prim, - unsigned start, - unsigned nr, - unsigned unfilled_mode, - unsigned *out_prim, - unsigned *out_index_size, - unsigned *out_nr, - u_generate_func *out_generate ) +enum indices_mode +u_unfilled_generator(unsigned prim, + unsigned start, + unsigned nr, + unsigned unfilled_mode, + unsigned *out_prim, + unsigned *out_index_size, + unsigned *out_nr, + u_generate_func *out_generate) { unsigned out_idx; -- 2.30.2