Expose resetForNextPicture in SkNoDrawCanvas
authorAdrienne Walker <enne@chromium.org>
Mon, 1 May 2017 20:45:01 +0000 (13:45 -0700)
committerSkia Commit-Bot <skia-commit-bot@chromium.org>
Tue, 2 May 2017 13:52:09 +0000 (13:52 +0000)
commit6a280a50eddc30c6b2a090d9e8e7df78afe7a457
tree8b239c8a431ac716d1fdacc7c7e75e41e0f344e9
parent687cc6c033506c767a960eb57b4d703a76424bfd
Expose resetForNextPicture in SkNoDrawCanvas

SkRecorder has some private Skia behavior with the way it handles an
SkNoDrawCanvas that is not exposed.  In particular, it's able to create
an arbitrary SkIRect device clip at construction time.

This is a performance optimization when reusing SkNoDrawCanvas across
multiple recordings instead of reconstructing a new canvas every time.

https://codereview.chromium.org/2768143002 is trying to implement
another version of SkPictureBuilder/SkRecorder and so wants to be able
to use similar SkNoDrawCanvas behavior.

Change-Id: I0ac5f0eef8f0548cefd7354062311667cf448b07
Reviewed-on: https://skia-review.googlesource.com/11320
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>
include/core/SkCanvas.h
include/utils/SkNoDrawCanvas.h
src/core/SkLiteRecorder.cpp
src/core/SkRecorder.cpp
src/utils/SkDeferredCanvas.cpp