From 6f6dfb4e8c0e71ff75c63b27c1a3ca71d1e36bbb Mon Sep 17 00:00:00 2001 From: "robertphillips@google.com" Date: Tue, 13 Nov 2012 18:28:06 +0000 Subject: Added profiling stubs to SkPicturePlayback https://codereview.appspot.com/6851044/ git-svn-id: http://skia.googlecode.com/svn/trunk@6397 2bbb7eff-a529-9590-31e7-b0007b416f81 --- src/core/SkPicturePlayback.cpp | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/core/SkPicturePlayback.cpp') diff --git a/src/core/SkPicturePlayback.cpp b/src/core/SkPicturePlayback.cpp index 5d4098a872..b1b51122cf 100644 --- a/src/core/SkPicturePlayback.cpp +++ b/src/core/SkPicturePlayback.cpp @@ -574,6 +574,14 @@ struct SkipClipRec { }; #endif +#ifdef SK_PICTURE_PROFILING_STUBS +void SkPicturePlayback::preDraw(size_t offset, int type) { +} + +void SkPicturePlayback::postDraw(size_t offset) { +} +#endif + void SkPicturePlayback::draw(SkCanvas& canvas) { #ifdef ENABLE_TIME_DRAW SkAutoTime at("SkPicture::draw", 50); @@ -622,7 +630,14 @@ void SkPicturePlayback::draw(SkCanvas& canvas) { SkMatrix initialMatrix = canvas.getTotalMatrix(); while (!reader.eof()) { - switch (reader.readInt()) { +#ifdef SK_PICTURE_PROFILING_STUBS + size_t curOffset = reader.offset(); +#endif + int type = reader.readInt(); +#ifdef SK_PICTURE_PROFILING_STUBS + this->preDraw(curOffset, type); +#endif + switch (type) { case CLIP_PATH: { const SkPath& path = getPath(reader); uint32_t packed = reader.readInt(); @@ -865,6 +880,10 @@ void SkPicturePlayback::draw(SkCanvas& canvas) { SkASSERT(0); } +#ifdef SK_PICTURE_PROFILING_STUBS + this->postDraw(curOffset); +#endif + if (it.isValid()) { uint32_t off = it.draw(); if (off == SK_MaxU32) { -- cgit v1.2.3