mesa: clean-up _mesa_lookup_prim_by_nr()
authorBrian Paul <brianp@vmware.com>
Thu, 20 Jan 2011 16:38:49 +0000 (09:38 -0700)
committerBrian Paul <brianp@vmware.com>
Thu, 20 Jan 2011 16:44:33 +0000 (09:44 -0700)
Remove the redundant public _mesa_prim_name[] array.

src/mapi/glapi/gen/gl_enums.py
src/mesa/main/debug.c
src/mesa/main/enums.c
src/mesa/main/enums.h
src/mesa/main/mtypes.h

index 0caa01030fade818e0f752583457bfd729a89061..d51b74a4a7cbcfc0b3f0e1da99bc198190a5f973 100644 (file)
@@ -46,6 +46,7 @@ class PrintGlEnums(gl_XML.gl_print_base):
                print '#include "main/mfeatures.h"'
                print '#include "main/enums.h"'
                print '#include "main/imports.h"'
+               print '#include "main/mtypes.h"'
                print ''
                print 'typedef struct {'
                print '   size_t offset;'
@@ -111,29 +112,39 @@ const char *_mesa_lookup_enum_by_nr( int nr )
    }
 }
 
+/**
+ * Primitive names
+ */
+static const char *prim_names[PRIM_UNKNOWN + 1] = {
+   "GL_POINTS",
+   "GL_LINES",
+   "GL_LINE_LOOP",
+   "GL_LINE_STRIP",
+   "GL_TRIANGLES",
+   "GL_TRIANGLE_STRIP",
+   "GL_TRIANGLE_FAN",
+   "GL_QUADS",
+   "GL_QUAD_STRIP",
+   "GL_POLYGON",
+   "outside begin/end",
+   "inside unknown primitive",
+   "unknown state"
+};
+
+
 /* 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 )
+const char *
+_mesa_lookup_prim_by_nr(GLuint 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>";
-   }
+   if (nr < Elements(prim_names))
+      return prim_names[nr];
+   else
+      return "invalid mode";
 }
 
 
-
 int _mesa_lookup_enum_by_name( const char *symbol )
 {
    enum_elt * f = NULL;
index 79aa53585f920bfb02ab7798469f57dabe6f5607..a6a909b48ced8d5e4b8e4a75036db0bdd1164757 100644 (file)
 #include "texobj.h"
 
 
-/**
- * Primitive names
- */
-const char *_mesa_prim_name[GL_POLYGON+4] = {
-   "GL_POINTS",
-   "GL_LINES",
-   "GL_LINE_LOOP",
-   "GL_LINE_STRIP",
-   "GL_TRIANGLES",
-   "GL_TRIANGLE_STRIP",
-   "GL_TRIANGLE_FAN",
-   "GL_QUADS",
-   "GL_QUAD_STRIP",
-   "GL_POLYGON",
-   "outside begin/end",
-   "inside unknown primitive",
-   "unknown state"
-};
-
-
 static const char *
 tex_target_name(GLenum tgt)
 {
index c358fb246bc9f4ff678f41ec59f127005315ef97..e9d6b6b156cd0f8d8dfc9cc79ed71169bdaee83c 100644 (file)
@@ -29,6 +29,7 @@
 #include "main/mfeatures.h"
 #include "main/enums.h"
 #include "main/imports.h"
+#include "main/mtypes.h"
 
 typedef struct {
    size_t offset;
@@ -6243,29 +6244,39 @@ const char *_mesa_lookup_enum_by_nr( int nr )
    }
 }
 
+/**
+ * Primitive names
+ */
+static const char *prim_names[PRIM_UNKNOWN + 1] = {
+   "GL_POINTS",
+   "GL_LINES",
+   "GL_LINE_LOOP",
+   "GL_LINE_STRIP",
+   "GL_TRIANGLES",
+   "GL_TRIANGLE_STRIP",
+   "GL_TRIANGLE_FAN",
+   "GL_QUADS",
+   "GL_QUAD_STRIP",
+   "GL_POLYGON",
+   "outside begin/end",
+   "inside unknown primitive",
+   "unknown state"
+};
+
+
 /* 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 )
+const char *
+_mesa_lookup_prim_by_nr(GLuint 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>";
-   }
+   if (nr < Elements(prim_names))
+      return prim_names[nr];
+   else
+      return "invalid mode";
 }
 
 
-
 int _mesa_lookup_enum_by_name( const char *symbol )
 {
    enum_elt * f = NULL;
index c03cd34da92a28fe2adc3b6b19ef59003c135f58..bf1d391d59eeca55373f55e2f5fbf95021a9188a 100644 (file)
@@ -45,7 +45,7 @@ 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 );
+const char *_mesa_lookup_prim_by_nr( GLuint nr );
 
 extern int _mesa_lookup_enum_by_name( const char *symbol );
 
index 1d878ae4e4ac95213ec5a2b4961745becafd9a0e..49dad4d402459a49ef16614d9f9ded9398d75da1 100644 (file)
@@ -3317,10 +3317,6 @@ struct gl_context
 };
 
 
-/** The string names for GL_POINT, GL_LINE_LOOP, etc */
-extern const char *_mesa_prim_name[GL_POLYGON+4];
-
-
 #ifdef DEBUG
 extern int MESA_VERBOSE;
 extern int MESA_DEBUG_FLAGS;