| Index: src/utils/SkDeferredCanvas.cpp
|
| ===================================================================
|
| --- src/utils/SkDeferredCanvas.cpp (revision 10994)
|
| +++ src/utils/SkDeferredCanvas.cpp (working copy)
|
| @@ -8,9 +8,9 @@
|
|
|
| #include "SkDeferredCanvas.h"
|
|
|
| +#include "SkBitmapDevice.h"
|
| #include "SkChunkAlloc.h"
|
| #include "SkColorFilter.h"
|
| -#include "SkDevice.h"
|
| #include "SkDrawFilter.h"
|
| #include "SkGPipe.h"
|
| #include "SkPaint.h"
|
| @@ -137,16 +137,16 @@
|
| //-----------------------------------------------------------------------------
|
| // DeferredDevice
|
| //-----------------------------------------------------------------------------
|
| -class DeferredDevice : public SkDevice {
|
| +class DeferredDevice : public SkBitmapDevice {
|
| public:
|
| - explicit DeferredDevice(SkDevice* immediateDevice);
|
| + explicit DeferredDevice(SkBaseDevice* immediateDevice);
|
| explicit DeferredDevice(SkSurface* surface);
|
| ~DeferredDevice();
|
|
|
| void setNotificationClient(SkDeferredCanvas::NotificationClient* notificationClient);
|
| SkCanvas* recordingCanvas();
|
| SkCanvas* immediateCanvas() const {return fImmediateCanvas;}
|
| - SkDevice* immediateDevice() const {return fImmediateCanvas->getTopDevice();}
|
| + SkBaseDevice* immediateDevice() const {return fImmediateCanvas->getTopDevice();}
|
| SkImage* newImageSnapshot();
|
| void setSurface(SkSurface* surface);
|
| bool isFreshFrame();
|
| @@ -165,24 +165,24 @@
|
| virtual int height() const SK_OVERRIDE;
|
| virtual GrRenderTarget* accessRenderTarget() SK_OVERRIDE;
|
|
|
| - virtual SkDevice* onCreateCompatibleDevice(SkBitmap::Config config,
|
| - int width, int height,
|
| - bool isOpaque,
|
| - Usage usage) SK_OVERRIDE;
|
| + virtual SkBaseDevice* onCreateCompatibleDevice(SkBitmap::Config config,
|
| + int width, int height,
|
| + bool isOpaque,
|
| + Usage usage) SK_OVERRIDE;
|
|
|
| virtual void writePixels(const SkBitmap& bitmap, int x, int y,
|
| SkCanvas::Config8888 config8888) SK_OVERRIDE;
|
|
|
| protected:
|
| - virtual const SkBitmap& onAccessBitmap(SkBitmap*) SK_OVERRIDE;
|
| + virtual const SkBitmap& onAccessBitmap() SK_OVERRIDE;
|
| virtual bool onReadPixels(const SkBitmap& bitmap,
|
| int x, int y,
|
| SkCanvas::Config8888 config8888) SK_OVERRIDE;
|
|
|
| // The following methods are no-ops on a deferred device
|
| - virtual bool filterTextFlags(const SkPaint& paint, TextFlags*)
|
| - SK_OVERRIDE
|
| - {return false;}
|
| + virtual bool filterTextFlags(const SkPaint& paint, TextFlags*) SK_OVERRIDE {
|
| + return false;
|
| + }
|
|
|
| // None of the following drawing methods should ever get called on the
|
| // deferred device
|
| @@ -234,7 +234,7 @@
|
| SkXfermode* xmode, const uint16_t indices[],
|
| int indexCount, const SkPaint& paint) SK_OVERRIDE
|
| {SkASSERT(0);}
|
| - virtual void drawDevice(const SkDraw&, SkDevice*, int x, int y,
|
| + virtual void drawDevice(const SkDraw&, SkBaseDevice*, int x, int y,
|
| const SkPaint&) SK_OVERRIDE
|
| {SkASSERT(0);}
|
| private:
|
| @@ -258,11 +258,11 @@
|
| size_t fBitmapSizeThreshold;
|
| };
|
|
|
| -DeferredDevice::DeferredDevice(SkDevice* immediateDevice)
|
| - : SkDevice(SkBitmap::kNo_Config,
|
| - immediateDevice->width(), immediateDevice->height(),
|
| - immediateDevice->isOpaque(),
|
| - immediateDevice->getDeviceProperties()) {
|
| +DeferredDevice::DeferredDevice(SkBaseDevice* immediateDevice)
|
| + : SkBitmapDevice(SkBitmap::kNo_Config,
|
| + immediateDevice->width(), immediateDevice->height(),
|
| + immediateDevice->isOpaque(),
|
| + immediateDevice->getDeviceProperties()) {
|
| fSurface = NULL;
|
| fImmediateCanvas = SkNEW_ARGS(SkCanvas, (immediateDevice));
|
| fPipeController.setPlaybackCanvas(fImmediateCanvas);
|
| @@ -270,11 +270,11 @@
|
| }
|
|
|
| DeferredDevice::DeferredDevice(SkSurface* surface)
|
| - : SkDevice(SkBitmap::kNo_Config,
|
| - surface->getCanvas()->getDevice()->width(),
|
| - surface->getCanvas()->getDevice()->height(),
|
| - surface->getCanvas()->getDevice()->isOpaque(),
|
| - surface->getCanvas()->getDevice()->getDeviceProperties()) {
|
| + : SkBitmapDevice(SkBitmap::kNo_Config,
|
| + surface->getCanvas()->getDevice()->width(),
|
| + surface->getCanvas()->getDevice()->height(),
|
| + surface->getCanvas()->getDevice()->isOpaque(),
|
| + surface->getCanvas()->getDevice()->getDeviceProperties()) {
|
| fMaxRecordingStorageBytes = kDefaultMaxRecordingStorageBytes;
|
| fNotificationClient = NULL;
|
| fImmediateCanvas = NULL;
|
| @@ -492,12 +492,12 @@
|
| }
|
| }
|
|
|
| -const SkBitmap& DeferredDevice::onAccessBitmap(SkBitmap*) {
|
| +const SkBitmap& DeferredDevice::onAccessBitmap() {
|
| this->flushPendingCommands(kNormal_PlaybackMode);
|
| return immediateDevice()->accessBitmap(false);
|
| }
|
|
|
| -SkDevice* DeferredDevice::onCreateCompatibleDevice(
|
| +SkBaseDevice* DeferredDevice::onCreateCompatibleDevice(
|
| SkBitmap::Config config, int width, int height, bool isOpaque,
|
| Usage usage) {
|
|
|
| @@ -555,7 +555,7 @@
|
| return SkNEW_ARGS(SkDeferredCanvas, (deferredDevice));
|
| }
|
|
|
| -SkDeferredCanvas* SkDeferredCanvas::Create(SkDevice* device) {
|
| +SkDeferredCanvas* SkDeferredCanvas::Create(SkBaseDevice* device) {
|
| SkAutoTUnref<DeferredDevice> deferredDevice(SkNEW_ARGS(DeferredDevice, (device)));
|
| return SkNEW_ARGS(SkDeferredCanvas, (deferredDevice));
|
| }
|
|
|