diff options
author | Robert Bragg <robert@linux.intel.com> | 2010-06-21 15:36:46 +0100 |
---|---|---|
committer | Robert Bragg <robert@linux.intel.com> | 2010-09-14 12:43:16 +0100 |
commit | 9d4ad1584d32a61ec6879601bc320fd79e2efb1e (patch) | |
tree | 5590c8c150ac958fad157afb8e49847b79ca55c5 /cogl/cogl-debug.c | |
parent | 4628d28172b2ec1cb6ef160d11f05863bcd5bd50 (diff) | |
download | cogl-9d4ad1584d32a61ec6879601bc320fd79e2efb1e.tar.gz |
profile: Update to uprof-0.3 dep for --enable-profile
When building with --enable-profile we now depend on the uprof-0.3
developer release which brings a few improvements:
» It lets us "fix" how we initialize uprof so that instead of using a shared
object constructor/destructor (which was a hack used when first adding
uprof support to Clutter) we can now initialize as part of clutter's
normal initialization code. As a side note though, I found that the way
Clutter initializes has some quite serious problems whenever it
involves GOptionGroups. It is not able to guarantee the initialization
of dependencies like uprof and Cogl. For this reason we still use the
contructor/destructor approach to initialize uprof in Cogl.
» uprof-0.3 provides a better API for adding custom columns when reporting
timer and counter statistics which lets us remove quite a lot of manual
report generation code in clutter-profile.c.
» uprof-0.3 provides a shared context for tracking mainloop timer
statistics. This means any mainloop based library following the same
"Mainloop" timer naming convention can use the shared context and no
matter who ends up owning the final mainloop the statistics will always
be in the same place. This allows profiling of Clutter with an
external mainloop such as with the Mutter compositor.
» uprof-0.3 can export statistics over dbus and comes with an ncurses
based ui to vizualize timer and counter stats live.
The latest version of uprof can be cloned from:
git://github.com/rib/UProf.git
Diffstat (limited to 'cogl/cogl-debug.c')
-rw-r--r-- | cogl/cogl-debug.c | 37 |
1 files changed, 7 insertions, 30 deletions
diff --git a/cogl/cogl-debug.c b/cogl/cogl-debug.c index 0dbf7f25..2289af2a 100644 --- a/cogl/cogl-debug.c +++ b/cogl/cogl-debug.c @@ -103,37 +103,14 @@ _cogl_parse_debug_string (const char *value, else if (strcmp (value, "help") == 0) { g_printerr ("\n\n%28s\n", "Supported debug values:"); -#define OPT(NAME, HELP) \ - g_printerr ("%28s %s\n", NAME, HELP); - OPT ("handle:", "debug ref counting issues for Cogl objects"); - OPT ("slicing:", "debug the creation of texture slices"); - OPT ("atlas:", "debug texture atlas management"); - OPT ("blend-strings:", "debug blend-string parsing"); - OPT ("journal:", "view all geometry passing through the journal"); - OPT ("batching:", "show how geometry is being batched in the journal"); - OPT ("matrices:", "trace all matrix manipulation"); - /* XXX: we should replace the "draw" option its very hand wavy... */ - OPT ("draw:", "misc tracing of some drawing operations"); - OPT ("pango:", "trace the pango renderer"); - OPT ("texture-pixmap:", "trace the Cogl texture pixmap backend"); - OPT ("rectangles:", "add wire outlines for all rectangular geometry"); - OPT ("disable-batching:", "disable the journal batching"); - OPT ("disable-vbos:", "disable use of OpenGL vertex buffer objects"); - OPT ("disable-pbos:", "disable use of OpenGL pixel buffer objects"); - OPT ("disable-software-transform", - "use the GPU to transform rectangular geometry"); - OPT ("dump-atlas-image:", "dump atlas changes to an image file"); - OPT ("disable-atlas:", "disable texture atlasing"); - OPT ("disable-texturing:", "disable texturing primitives"); - OPT ("disable-arbfp:", "disable use of ARBfp"); - OPT ("disable-glsl:", "disable use of GLSL"); - OPT ("disable-blending:", "disable use of blending"); - OPT ("show-source:", "show generated ARBfp/GLSL"); - OPT ("opengl:", "traces some select OpenGL calls"); - OPT ("offscreen:", "debug offscreen support"); +#define OPT(MASK_NAME, GROUP, NAME, NAME_FORMATTED, DESCRIPTION) \ + g_printerr ("%28s %s\n", NAME ":", DESCRIPTION); +#include "cogl-debug-options.h" g_printerr ("\n%28s\n", "Special debug values:"); - OPT ("all:", "Enables all non-behavioural debug options"); - OPT ("verbose:", "Enables all non-behavioural debug options"); + OPT (IGNORED, "ignored", "all", "ignored", \ + "Enables all non-behavioural debug options"); + OPT (IGNORED, "ignored", "verbose", "ignored", \ + "Enables all non-behavioural debug options"); #undef OPT exit (1); } |