Chromium Code Reviews| Index: src/core/SkCanvas.cpp |
| diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp |
| index 3b7cc5bea0a4217001ffb94dda6fefc32ebefcc0..77a5ae81c738e13bfdb9d2770c3eb9d8d8f0da21 100644 |
| --- a/src/core/SkCanvas.cpp |
| +++ b/src/core/SkCanvas.cpp |
| @@ -1062,6 +1062,15 @@ const void* SkCanvas::onPeekPixels(SkImageInfo* info, size_t* rowBytes) { |
| return dev ? dev->peekPixels(info, rowBytes) : NULL; |
| } |
| +void* SkCanvas::accessTopLayerPixels(SkImageInfo* info, size_t* rowBytes) { |
| + return const_cast<void*>(this->onPeekPixels(info, rowBytes)); |
|
bsalomon
2014/03/12 14:43:11
onAccessTopLayerPixels()
reed1
2014/03/12 15:31:59
Done.
|
| +} |
| + |
| +void* SkCanvas::onAccessTopLayerPixels(SkImageInfo* info, size_t* rowBytes) { |
| + SkBaseDevice* dev = this->getTopDevice(); |
| + return dev ? dev->accessPixels(info, rowBytes) : NULL; |
| +} |
| + |
| SkAutoROCanvasPixels::SkAutoROCanvasPixels(SkCanvas* canvas) { |
| fAddr = canvas->peekPixels(&fInfo, &fRowBytes); |
| if (NULL == fAddr) { |
| @@ -1735,6 +1744,11 @@ void SkCanvas::internal_private_getTotalClipAsPath(SkPath* path) const { |
| (void)rgn.getBoundaryPath(path); |
| } |
| +GrRenderTarget* SkCanvas::internal_private_accessTopLayerRenderTarget() { |
| + SkBaseDevice* dev = this->getTopDevice(); |
| + return dev ? dev->accessRenderTarget() : NULL; |
| +} |
| + |
| SkBaseDevice* SkCanvas::createLayerDevice(const SkImageInfo& info) { |
| SkBaseDevice* device = this->getTopDevice(); |
| return device ? device->createCompatibleDeviceForSaveLayer(info) : NULL; |