aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkBlitter.h
diff options
context:
space:
mode:
authorGravatar herb <herb@google.com>2016-06-10 13:01:27 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-06-10 13:01:27 -0700
commit7df9e4a87d84415391c167ea54cd389d4b423c2d (patch)
tree15314082e379437acef1acace3ae222cba6fb14f /src/core/SkBlitter.h
parenta233620f9ce9d94272619ecf94962319faec693a (diff)
Make SkBlitter hierarchy explicit about what needs to be implemented.
Diffstat (limited to 'src/core/SkBlitter.h')
-rw-r--r--src/core/SkBlitter.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/core/SkBlitter.h b/src/core/SkBlitter.h
index 0095826248..42ef34249a 100644
--- a/src/core/SkBlitter.h
+++ b/src/core/SkBlitter.h
@@ -28,16 +28,18 @@ public:
virtual ~SkBlitter();
/// Blit a horizontal run of one or more pixels.
- virtual void blitH(int x, int y, int width);
+ virtual void blitH(int x, int y, int width) = 0;
+
/// Blit a horizontal run of antialiased pixels; runs[] is a *sparse*
/// zero-terminated run-length encoding of spans of constant alpha values.
- virtual void blitAntiH(int x, int y, const SkAlpha antialias[],
- const int16_t runs[]);
+ virtual void blitAntiH(int x, int y, const SkAlpha antialias[], const int16_t runs[]) = 0;
/// Blit a vertical run of pixels with a constant alpha value.
virtual void blitV(int x, int y, int height, SkAlpha alpha);
+
/// Blit a solid rectangle one or more pixels wide.
virtual void blitRect(int x, int y, int width, int height);
+
/** Blit a rectangle with one alpha-blended column on the left,
width (zero or more) opaque pixels, and one alpha-blended column
on the right.
@@ -45,6 +47,7 @@ public:
*/
virtual void blitAntiRect(int x, int y, int width, int height,
SkAlpha leftAlpha, SkAlpha rightAlpha);
+
/// Blit a pattern of pixels defined by a rectangle-clipped mask;
/// typically used for text.
virtual void blitMask(const SkMask&, const SkIRect& clip);