| Index: src/core/SkSpriteBlitter.h
|
| diff --git a/src/core/SkSpriteBlitter.h b/src/core/SkSpriteBlitter.h
|
| index 62c50c8b35c267f3e1461ff2468e77dd9d48bcf6..3a62860867901c4075a47e3e2d37104c254ae0da 100644
|
| --- a/src/core/SkSpriteBlitter.h
|
| +++ b/src/core/SkSpriteBlitter.h
|
| @@ -15,18 +15,23 @@
|
|
|
| class SkPaint;
|
|
|
| +// SkSpriteBlitter specializes SkBlitter in a way to move large rectangles of pixels around.
|
| +// Because of this use, the main primitive shifts from blitH style things to the more efficient
|
| +// blitRect.
|
| class SkSpriteBlitter : public SkBlitter {
|
| public:
|
| SkSpriteBlitter(const SkPixmap& source);
|
|
|
| virtual void setup(const SkPixmap& dst, int left, int top, const SkPaint&);
|
|
|
| -#ifdef SK_DEBUG
|
| + // blitH, blitAntiH, blitV and blitMask should not be called on an SkSpriteBlitter.
|
| void blitH(int x, int y, int width) override;
|
| void blitAntiH(int x, int y, const SkAlpha antialias[], const int16_t runs[]) override;
|
| void blitV(int x, int y, int height, SkAlpha alpha) override;
|
| void blitMask(const SkMask&, const SkIRect& clip) override;
|
| -#endif
|
| +
|
| + // A SkSpriteBlitter must implement blitRect.
|
| + void blitRect(int x, int y, int width, int height) override = 0;
|
|
|
| static SkSpriteBlitter* ChooseD16(const SkPixmap& source, const SkPaint&, SkTBlitterAllocator*);
|
| static SkSpriteBlitter* ChooseL32(const SkPixmap& source, const SkPaint&, SkTBlitterAllocator*);
|
| @@ -38,6 +43,9 @@ protected:
|
| const SkPixmap fSource;
|
| int fLeft, fTop;
|
| const SkPaint* fPaint;
|
| +
|
| +private:
|
| + typedef SkBlitter INHERITED;
|
| };
|
|
|
| #endif
|
|
|