diff options
author | Mike Reed <reed@google.com> | 2017-02-08 10:07:53 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-02-08 15:42:46 +0000 |
commit | 7627fa51044e35dc21251f925b56f6dd6887df97 (patch) | |
tree | fdef2c19e28f5ca8c10aa137672696a2746c8170 /src/core/SkBitmapDevice.h | |
parent | 688ded2ee6c3472986eec2122830667378697577 (diff) |
add virtuals in prep for device-clipping
Build flag available for backends to begin testing their impl.
Need to formalize save/restore, and how to forward these to device but not on picture canvases.
BUG=skia:6214
Change-Id: Ic5c0afba3e8c84fcf124567e63fe2f5880b623e7
Reviewed-on: https://skia-review.googlesource.com/8183
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/core/SkBitmapDevice.h')
-rw-r--r-- | src/core/SkBitmapDevice.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/core/SkBitmapDevice.h b/src/core/SkBitmapDevice.h index 1f72d8df3c..0a6471080b 100644 --- a/src/core/SkBitmapDevice.h +++ b/src/core/SkBitmapDevice.h @@ -14,6 +14,7 @@ #include "SkDevice.h" #include "SkImageInfo.h" #include "SkPixelRef.h" +#include "SkRasterClip.h" #include "SkRect.h" #include "SkScalar.h" #include "SkSize.h" @@ -125,6 +126,13 @@ protected: bool onPeekPixels(SkPixmap*) override; bool onAccessPixels(SkPixmap*) override; + void onSave() override; + void onRestore() override; + void onClipRect(const SkRect& rect, SkClipOp, bool aa) override; + void onClipRRect(const SkRRect& rrect, SkClipOp, bool aa) override; + void onClipPath(const SkPath& path, SkClipOp, bool aa) override; + void onClipRegion(const SkRegion& deviceRgn, SkClipOp) override; + private: friend class SkCanvas; friend struct DeviceCM; //for setMatrixClip @@ -147,6 +155,7 @@ private: SkBitmap fBitmap; void* fRasterHandle = nullptr; + SkTArray<SkRasterClip> fRCStack; void setNewSize(const SkISize&); // Used by SkCanvas for resetForNextPicture(). |