Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Side by Side Diff: include/core/SkCanvas.h

Issue 2205273003: Add onDrawBitmapLattice(), avoid unnecessary bitmap->image copy (Closed) Base URL: https://skia.googlesource.com/skia.git@copypaste
Patch Set: Move bitmap virtual into SkBaseDevice Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | include/core/SkDevice.h » ('j') | src/core/SkDevice.cpp » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2006 The Android Open Source Project 2 * Copyright 2006 The Android Open Source Project
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef SkCanvas_DEFINED 8 #ifndef SkCanvas_DEFINED
9 #define SkCanvas_DEFINED 9 #define SkCanvas_DEFINED
10 10
(...skipping 1452 matching lines...) Expand 10 before | Expand all | Expand 10 after
1463 const uint16_t indices[], int indexCount, const SkPaint&); 1463 const uint16_t indices[], int indexCount, const SkPaint&);
1464 1464
1465 virtual void onDrawAtlas(const SkImage*, const SkRSXform[], const SkRect[], const SkColor[], 1465 virtual void onDrawAtlas(const SkImage*, const SkRSXform[], const SkRect[], const SkColor[],
1466 int count, SkXfermode::Mode, const SkRect* cull, co nst SkPaint*); 1466 int count, SkXfermode::Mode, const SkRect* cull, co nst SkPaint*);
1467 virtual void onDrawPath(const SkPath&, const SkPaint&); 1467 virtual void onDrawPath(const SkPath&, const SkPaint&);
1468 virtual void onDrawImage(const SkImage*, SkScalar dx, SkScalar dy, const SkP aint*); 1468 virtual void onDrawImage(const SkImage*, SkScalar dx, SkScalar dy, const SkP aint*);
1469 virtual void onDrawImageRect(const SkImage*, const SkRect*, const SkRect&, c onst SkPaint*, 1469 virtual void onDrawImageRect(const SkImage*, const SkRect*, const SkRect&, c onst SkPaint*,
1470 SrcRectConstraint); 1470 SrcRectConstraint);
1471 virtual void onDrawImageNine(const SkImage*, const SkIRect& center, const Sk Rect& dst, 1471 virtual void onDrawImageNine(const SkImage*, const SkIRect& center, const Sk Rect& dst,
1472 const SkPaint*); 1472 const SkPaint*);
1473 virtual void onDrawImageLattice(const SkImage*, const Lattice& lattice, cons t SkRect& dst,
1474 const SkPaint*);
1473 1475
1474 virtual void onDrawBitmap(const SkBitmap&, SkScalar dx, SkScalar dy, const S kPaint*); 1476 virtual void onDrawBitmap(const SkBitmap&, SkScalar dx, SkScalar dy, const S kPaint*);
1475 virtual void onDrawBitmapRect(const SkBitmap&, const SkRect*, const SkRect&, const SkPaint*, 1477 virtual void onDrawBitmapRect(const SkBitmap&, const SkRect*, const SkRect&, const SkPaint*,
1476 SrcRectConstraint); 1478 SrcRectConstraint);
1477 virtual void onDrawBitmapNine(const SkBitmap&, const SkIRect& center, const SkRect& dst, 1479 virtual void onDrawBitmapNine(const SkBitmap&, const SkIRect& center, const SkRect& dst,
1478 const SkPaint*); 1480 const SkPaint*);
1479 virtual void onDrawImageLattice(const SkImage*, const Lattice& lattice, cons t SkRect& dst, 1481 virtual void onDrawBitmapLattice(const SkBitmap&, const Lattice& lattice, co nst SkRect& dst,
1480 const SkPaint*); 1482 const SkPaint*);
1481 1483
1482 enum ClipEdgeStyle { 1484 enum ClipEdgeStyle {
1483 kHard_ClipEdgeStyle, 1485 kHard_ClipEdgeStyle,
1484 kSoft_ClipEdgeStyle 1486 kSoft_ClipEdgeStyle
1485 }; 1487 };
1486 1488
1487 virtual void onClipRect(const SkRect& rect, SkRegion::Op op, ClipEdgeStyle e dgeStyle); 1489 virtual void onClipRect(const SkRect& rect, SkRegion::Op op, ClipEdgeStyle e dgeStyle);
1488 virtual void onClipRRect(const SkRRect& rrect, SkRegion::Op op, ClipEdgeStyl e edgeStyle); 1490 virtual void onClipRRect(const SkRRect& rrect, SkRegion::Op op, ClipEdgeStyl e edgeStyle);
1489 virtual void onClipPath(const SkPath& path, SkRegion::Op op, ClipEdgeStyle e dgeStyle); 1491 virtual void onClipPath(const SkPath& path, SkRegion::Op op, ClipEdgeStyle e dgeStyle);
1490 virtual void onClipRegion(const SkRegion& deviceRgn, SkRegion::Op op); 1492 virtual void onClipRegion(const SkRegion& deviceRgn, SkRegion::Op op);
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
1717 1719
1718 class SkCanvasClipVisitor { 1720 class SkCanvasClipVisitor {
1719 public: 1721 public:
1720 virtual ~SkCanvasClipVisitor(); 1722 virtual ~SkCanvasClipVisitor();
1721 virtual void clipRect(const SkRect&, SkRegion::Op, bool antialias) = 0; 1723 virtual void clipRect(const SkRect&, SkRegion::Op, bool antialias) = 0;
1722 virtual void clipRRect(const SkRRect&, SkRegion::Op, bool antialias) = 0; 1724 virtual void clipRRect(const SkRRect&, SkRegion::Op, bool antialias) = 0;
1723 virtual void clipPath(const SkPath&, SkRegion::Op, bool antialias) = 0; 1725 virtual void clipPath(const SkPath&, SkRegion::Op, bool antialias) = 0;
1724 }; 1726 };
1725 1727
1726 #endif 1728 #endif
OLDNEW
« no previous file with comments | « no previous file | include/core/SkDevice.h » ('j') | src/core/SkDevice.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698