diff options
author | tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2011-06-30 19:37:01 +0000 |
---|---|---|
committer | tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2011-06-30 19:37:01 +0000 |
commit | 278cbb452a260de1550769b168df448e0911cf3c (patch) | |
tree | d6ca215af1d87509bbf72f4fa86dc1dd1f5dd0a7 /include/config | |
parent | 4ee7ae5dcfe2055cfcfc21bf2cec1d790330eb4a (diff) |
Enable WebKit/Chromium style logging for Skia.
New macros called in Ganesh functions; by default are compiled away,
in example code resolve to printout, and are compatible with WebKit/Chromium
event logging and GPU profiler.
git-svn-id: http://skia.googlecode.com/svn/trunk@1770 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'include/config')
-rw-r--r-- | include/config/SkUserConfig.h | 12 | ||||
-rw-r--r-- | include/config/SkUserTrace.h | 42 |
2 files changed, 54 insertions, 0 deletions
diff --git a/include/config/SkUserConfig.h b/include/config/SkUserConfig.h index 0e82133a93..6ee514646b 100644 --- a/include/config/SkUserConfig.h +++ b/include/config/SkUserConfig.h @@ -148,6 +148,18 @@ //#define SK_SUPPORT_UNITTEST #endif +/* If your system embeds skia and has complex event logging, redefine this + symbol to point to a file that maps the following macros to your system's + equivalents: + SK_TRACE_EVENT0(event) + SK_TRACE_EVENT1(event, name1, value1) + SK_TRACE_EVENT2(event, name1, value1, name2, value2) + include/config/SkUserTrace.h has a no-op implementation, while + src/utils/SkDebugTrace.h has a trivial implementation that writes to + the debug output stream. +*/ +#define SK_USER_TRACE_INCLUDE_FILE "../../include/config/SkUserTrace.h" + /* Change the ordering to work in X windows. */ #ifdef SK_SAMPLES_FOR_X diff --git a/include/config/SkUserTrace.h b/include/config/SkUserTrace.h new file mode 100644 index 0000000000..c5d168a501 --- /dev/null +++ b/include/config/SkUserTrace.h @@ -0,0 +1,42 @@ +/* + Copyright 2010 Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + */ +#ifndef SkUserTrace_DEFINED +#define SkUserTrace_DEFINED + +/* If your system embeds skia and has complex event logging, define these + to map to your system's equivalents. A trivial example is given in + src/utils/SkDebugTrace.h. + + All arguments are const char*. Skia typically passes the name of + the object and function (and sometimes region of interest within + the function) separated by double colons for 'event'. + + SK_TRACE_EVENT1 and SK_TRACE_EVENT2 take one or two arbitrary + name-value pairs that you also want to log. SkStringPrintf() is useful + for formatting these values. + + For example: + SK_TRACE_EVENT0("GrContext::createAndLockTexture"); + SK_TRACE_EVENT1("GrDefaultPathRenderer::onDrawPath::renderPasses", + "verts", SkStringPrintf("%i", vert - base).c_str()); +*/ +#define SK_TRACE_EVENT0(event) +#define SK_TRACE_EVENT1(event, name1, value1) +#define SK_TRACE_EVENT2(event, name1, value1, name2, value2) + +#endif + + |