Browse Source

mesa: add debug printer for primitive name

Add a simple version of _mesa_lookup_enum_by_nr() which expects a primitive
enum (GL_POINTS..GL_POLYGON).  This avoids some annoying duplicates
when looking up primitives, such as the GL_FALSE/GL_POINTS clash.
tags/intel_2009q2_rc3
Keith Whitwell 16 years ago
parent
commit
aa688d1579
2 changed files with 28 additions and 0 deletions
  1. 22
    0
      src/mesa/main/enums.c
  2. 6
    0
      src/mesa/main/enums.h

+ 22
- 0
src/mesa/main/enums.c View File

@@ -5059,6 +5059,28 @@ const char *_mesa_lookup_enum_by_nr( int nr )
}
}

/* Get the name of an enum given that it is a primitive type. Avoids
* GL_FALSE/GL_POINTS ambiguity and others.
*/
const char *_mesa_lookup_prim_by_nr( int nr )
{
switch (nr) {
case GL_POINTS: return "GL_POINTS";
case GL_LINES: return "GL_LINES";
case GL_LINE_STRIP: return "GL_LINE_STRIP";
case GL_LINE_LOOP: return "GL_LINE_LOOP";
case GL_TRIANGLES: return "GL_TRIANGLES";
case GL_TRIANGLE_STRIP: return "GL_TRIANGLE_STRIP";
case GL_TRIANGLE_FAN: return "GL_TRIANGLE_FAN";
case GL_QUADS: return "GL_QUADS";
case GL_QUAD_STRIP: return "GL_QUAD_STRIP";
case GL_POLYGON: return "GL_POLYGON";
case GL_POLYGON+1: return "OUTSIDE_BEGIN_END";
default: return "<invalid>";
}
}


int _mesa_lookup_enum_by_name( const char *symbol )
{
enum_elt * f = NULL;

+ 6
- 0
src/mesa/main/enums.h View File

@@ -40,6 +40,12 @@
#if defined(_HAVE_FULL_GL) && _HAVE_FULL_GL

extern const char *_mesa_lookup_enum_by_nr( int nr );

/* Get the name of an enum given that it is a primitive type. Avoids
* GL_FALSE/GL_POINTS ambiguity and others.
*/
const char *_mesa_lookup_prim_by_nr( int nr );

extern int _mesa_lookup_enum_by_name( const char *symbol );

#else

Loading…
Cancel
Save