diff options
author | Mike Reed <reed@google.com> | 2017-01-18 00:04:52 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-01-18 00:05:02 +0000 |
commit | d4bdee5f2c4c2c1387426d287f61645b5af8f8e0 (patch) | |
tree | 0793dec332aaee6a9c751909cd1a1f30fb2ae3ab /src/core/SkBitmapDevice.h | |
parent | 893c49e209cb1bff9bb5f36338e02ec6709beca5 (diff) |
Revert "move device headers to core"
This reverts commit 98420d0c9b5934d6b08ea994844476ddedd23de0.
Reason for revert: <INSERT REASONING HERE>
blink_headless ImageBufferSurface.cpp
Original change's description:
> move device headers to core
>
> CANNOT LAND until we update lots of call-sites
>
> BUG=skia:
>
> Change-Id: Ibb957dbbf5baf2a2920887e48c03709d1f6c51e1
> Reviewed-on: https://skia-review.googlesource.com/6982
> Commit-Queue: Mike Reed <reed@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>
>
TBR=bungeman@google.com,fmalita@chromium.org,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Change-Id: I11f108137ed0a8efd553af6ea6039904cf3a3870
Reviewed-on: https://skia-review.googlesource.com/7161
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Diffstat (limited to 'src/core/SkBitmapDevice.h')
-rw-r--r-- | src/core/SkBitmapDevice.h | 186 |
1 files changed, 0 insertions, 186 deletions
diff --git a/src/core/SkBitmapDevice.h b/src/core/SkBitmapDevice.h deleted file mode 100644 index 776b6a0dec..0000000000 --- a/src/core/SkBitmapDevice.h +++ /dev/null @@ -1,186 +0,0 @@ - -/* - * Copyright 2013 Google Inc. - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -#ifndef SkBitmapDevice_DEFINED -#define SkBitmapDevice_DEFINED - -#include "SkBitmap.h" -#include "SkCanvas.h" -#include "SkColor.h" -#include "SkDevice.h" -#include "SkImageInfo.h" -#include "SkPixelRef.h" -#include "SkRect.h" -#include "SkScalar.h" -#include "SkSize.h" -#include "SkSurfaceProps.h" -#include "SkTypes.h" - -class SkDraw; -class SkImageFilterCache; -class SkMatrix; -class SkPaint; -class SkPath; -class SkPixelRef; -class SkPixmap; -class SkRasterHandleAllocator; -class SkRRect; -class SkSurface; -struct SkPoint; - -/////////////////////////////////////////////////////////////////////////////// -class SK_API SkBitmapDevice : public SkBaseDevice { -public: - /** - * Construct a new device with the specified bitmap as its backend. It is - * valid for the bitmap to have no pixels associated with it. In that case, - * any drawing to this device will have no effect. - */ - SkBitmapDevice(const SkBitmap& bitmap); - - /** - * Create a new device along with its requisite pixel memory using - * default SkSurfaceProps (i.e., kLegacyFontHost_InitType-style). - * Note: this entry point is slated for removal - no one should call it. - */ - static SkBitmapDevice* Create(const SkImageInfo& info); - - /** - * Construct a new device with the specified bitmap as its backend. It is - * valid for the bitmap to have no pixels associated with it. In that case, - * any drawing to this device will have no effect. - */ - SkBitmapDevice(const SkBitmap& bitmap, const SkSurfaceProps& surfaceProps, - void* externalHandle = nullptr); - - static SkBitmapDevice* Create(const SkImageInfo&, const SkSurfaceProps&, - SkRasterHandleAllocator* = nullptr); - -protected: - bool onShouldDisableLCD(const SkPaint&) const override; - void* getRasterHandle() const override { return fRasterHandle; } - - /** These are called inside the per-device-layer loop for each draw call. - When these are called, we have already applied any saveLayer operations, - and are handling any looping from the paint, and any effects from the - DrawFilter. - */ - void drawPaint(const SkDraw&, const SkPaint& paint) override; - virtual void drawPoints(const SkDraw&, SkCanvas::PointMode mode, size_t count, - const SkPoint[], const SkPaint& paint) override; - virtual void drawRect(const SkDraw&, const SkRect& r, - const SkPaint& paint) override; - virtual void drawOval(const SkDraw&, const SkRect& oval, - const SkPaint& paint) override; - virtual void drawRRect(const SkDraw&, const SkRRect& rr, - const SkPaint& paint) override; - - /** - * If pathIsMutable, then the implementation is allowed to cast path to a - * non-const pointer and modify it in place (as an optimization). Canvas - * may do this to implement helpers such as drawOval, by placing a temp - * path on the stack to hold the representation of the oval. - * - * If prePathMatrix is not null, it should logically be applied before any - * stroking or other effects. If there are no effects on the paint that - * affect the geometry/rasterization, then the pre matrix can just be - * pre-concated with the current matrix. - */ - virtual void drawPath(const SkDraw&, const SkPath& path, - const SkPaint& paint, - const SkMatrix* prePathMatrix = NULL, - bool pathIsMutable = false) override; - virtual void drawBitmap(const SkDraw&, const SkBitmap& bitmap, - const SkMatrix& matrix, const SkPaint& paint) override; - virtual void drawSprite(const SkDraw&, const SkBitmap& bitmap, - int x, int y, const SkPaint& paint) override; - - /** - * The default impl. will create a bitmap-shader from the bitmap, - * and call drawRect with it. - */ - void drawBitmapRect(const SkDraw&, const SkBitmap&, const SkRect*, const SkRect&, - const SkPaint&, SkCanvas::SrcRectConstraint) override; - - /** - * Does not handle text decoration. - * Decorations (underline and stike-thru) will be handled by SkCanvas. - */ - virtual void drawText(const SkDraw&, const void* text, size_t len, - SkScalar x, SkScalar y, const SkPaint& paint) override; - virtual void drawPosText(const SkDraw&, const void* text, size_t len, - const SkScalar pos[], int scalarsPerPos, - const SkPoint& offset, const SkPaint& paint) override; - virtual void drawVertices(const SkDraw&, SkCanvas::VertexMode, int vertexCount, - const SkPoint verts[], const SkPoint texs[], - const SkColor colors[], SkBlendMode, - const uint16_t indices[], int indexCount, - const SkPaint& paint) override; - virtual void drawDevice(const SkDraw&, SkBaseDevice*, int x, int y, const SkPaint&) override; - - /////////////////////////////////////////////////////////////////////////// - - void drawSpecial(const SkDraw&, SkSpecialImage*, int x, int y, const SkPaint&) override; - sk_sp<SkSpecialImage> makeSpecial(const SkBitmap&) override; - sk_sp<SkSpecialImage> makeSpecial(const SkImage*) override; - sk_sp<SkSpecialImage> snapSpecial() override; - - /////////////////////////////////////////////////////////////////////////// - - /** Update as needed the pixel value in the bitmap, so that the caller can - access the pixels directly. Note: only the pixels field should be - altered. The config/width/height/rowbytes must remain unchanged. - @return the device contents as a bitmap - */ -#ifdef SK_SUPPORT_LEGACY_ACCESSBITMAP - const SkBitmap& onAccessBitmap() override; -#else - const SkBitmap& onAccessBitmap(); -#endif - - SkPixelRef* getPixelRef() const { return fBitmap.pixelRef(); } - // just for subclasses, to assign a custom pixelref - void setPixelRef(sk_sp<SkPixelRef> pr) { fBitmap.setPixelRef(std::move(pr), 0, 0); } -#ifdef SK_SUPPORT_LEGACY_BITMAP_SETPIXELREF - SkPixelRef* setPixelRef(SkPixelRef* pr) { return fBitmap.setPixelRef(pr); } -#endif - - bool onReadPixels(const SkImageInfo&, void*, size_t, int x, int y) override; - bool onWritePixels(const SkImageInfo&, const void*, size_t, int, int) override; - bool onPeekPixels(SkPixmap*) override; - bool onAccessPixels(SkPixmap*) override; - -private: - friend class SkCanvas; - friend struct DeviceCM; //for setMatrixClip - friend class SkDraw; - friend class SkDrawIter; - friend class SkDeviceFilteredPaint; - - friend class SkSurface_Raster; - - // used to change the backend's pixels (and possibly config/rowbytes) - // but cannot change the width/height, so there should be no change to - // any clip information. - void replaceBitmapBackendForRasterSurface(const SkBitmap&) override; - - SkBaseDevice* onCreateDevice(const CreateInfo&, const SkPaint*) override; - - sk_sp<SkSurface> makeSurface(const SkImageInfo&, const SkSurfaceProps&) override; - - SkImageFilterCache* getImageFilterCache() override; - - SkBitmap fBitmap; - void* fRasterHandle = nullptr; - - void setNewSize(const SkISize&); // Used by SkCanvas for resetForNextPicture(). - - typedef SkBaseDevice INHERITED; -}; - -#endif // SkBitmapDevice_DEFINED |