Index: include/effects/SkLayerRasterizer.h |
diff --git a/include/effects/SkLayerRasterizer.h b/include/effects/SkLayerRasterizer.h |
index c061be689d0b7d3c98739f1a437da5033e32a83f..9d4c8239f2fc8da3613e63036ab23b72c846173e 100644 |
--- a/include/effects/SkLayerRasterizer.h |
+++ b/include/effects/SkLayerRasterizer.h |
@@ -1,9 +1,11 @@ |
+ |
/* |
* Copyright 2006 The Android Open Source Project |
* |
* Use of this source code is governed by a BSD-style license that can be |
* found in the LICENSE file. |
*/ |
+ |
#ifndef SkLayerRasterizer_DEFINED |
#define SkLayerRasterizer_DEFINED |
@@ -62,9 +64,24 @@ |
SkDeque* fLayers; |
}; |
+#ifdef SK_SUPPORT_LEGACY_LAYERRASTERIZER_API |
+ void addLayer(const SkPaint& paint) { |
+ this->addLayer(paint, 0, 0); |
+ } |
+ |
+ /** Add a new layer (above any previous layers) to the rasterizer. |
+ The layer will extract those fields that affect the mask from |
+ the specified paint, but will not retain a reference to the paint |
+ object itself, so it may be reused without danger of side-effects. |
+ */ |
+ void addLayer(const SkPaint& paint, SkScalar dx, SkScalar dy); |
+#endif |
+ |
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkLayerRasterizer) |
protected: |
+ SkLayerRasterizer(SkDeque* layers); |
+ SkLayerRasterizer(SkReadBuffer&); |
virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE; |
// override from SkRasterizer |
@@ -72,12 +89,17 @@ |
const SkIRect* clipBounds, |
SkMask* mask, SkMask::CreateMode mode) const; |
+#ifdef SK_SUPPORT_LEGACY_LAYERRASTERIZER_API |
+public: |
+#endif |
+ SkLayerRasterizer(); |
+ |
private: |
+#ifdef SK_SUPPORT_LEGACY_LAYERRASTERIZER_API |
+ SkDeque* fLayers; |
+#else |
const SkDeque* const fLayers; |
- |
- SkLayerRasterizer(); |
- SkLayerRasterizer(SkDeque* layers); |
- SkLayerRasterizer(SkReadBuffer&); |
+#endif |
static SkDeque* ReadLayers(SkReadBuffer& buffer); |