Mesa (gallium-xlib-rework): debug: add noprefix version of debug_dump_enum

Keith Whitwell keithw at kemper.freedesktop.org
Sat Jan 17 18:45:31 UTC 2009


Module: Mesa
Branch: gallium-xlib-rework
Commit: 8f3fac6107460b6d9b011b5c76246468bb16004b
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8f3fac6107460b6d9b011b5c76246468bb16004b

Author: Keith Whitwell <keith at tungstengraphics.com>
Date:   Sat Jan 17 18:45:20 2009 +0000

debug: add noprefix version of debug_dump_enum

---

 src/gallium/auxiliary/util/p_debug.c |   26 ++++++++++++++++++++++++++
 src/gallium/include/pipe/p_debug.h   |    5 +++++
 2 files changed, 31 insertions(+), 0 deletions(-)

diff --git a/src/gallium/auxiliary/util/p_debug.c b/src/gallium/auxiliary/util/p_debug.c
index acdfa21..f373f94 100644
--- a/src/gallium/auxiliary/util/p_debug.c
+++ b/src/gallium/auxiliary/util/p_debug.c
@@ -406,6 +406,32 @@ debug_dump_enum(const struct debug_named_value *names,
 
 
 const char *
+debug_dump_enum_noprefix(const struct debug_named_value *names, 
+                         const char *prefix,
+                         unsigned long value)
+{
+   static char rest[64];
+   
+   while(names->name) {
+      if(names->value == value) {
+         const char *name = names->name;
+         while (*name == *prefix) {
+            name++;
+            prefix++;
+         }
+         return name;
+      }
+      ++names;
+   }
+
+   
+
+   util_snprintf(rest, sizeof(rest), "0x%08lx", value);
+   return rest;
+}
+
+
+const char *
 debug_dump_flags(const struct debug_named_value *names, 
                  unsigned long value)
 {
diff --git a/src/gallium/include/pipe/p_debug.h b/src/gallium/include/pipe/p_debug.h
index 3b00fb9..e9c9598 100644
--- a/src/gallium/include/pipe/p_debug.h
+++ b/src/gallium/include/pipe/p_debug.h
@@ -261,6 +261,11 @@ const char *
 debug_dump_enum(const struct debug_named_value *names, 
                 unsigned long value);
 
+const char *
+debug_dump_enum_noprefix(const struct debug_named_value *names, 
+                         const char *prefix,
+                         unsigned long value);
+
 
 /**
  * Convert binary flags value to a string.




More information about the mesa-commit mailing list