aboutsummaryrefslogtreecommitdiffstats
path: root/src/core/SkDeviceLooper.cpp
diff options
context:
space:
mode:
authorreed <reed@google.com>2015-06-09 12:16:53 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-09 12:16:53 -0700
commit41e010cb901c0da9066c4df562030808c9ccd7f8 (patch)
tree3bf17e946f9eadd43040ea6968adcfa5f2f882a4 /src/core/SkDeviceLooper.cpp
parent1831f990c31bad0d84641663c96aa8eebf846ab9 (diff)
downloadplatform_external_skqp-41e010cb901c0da9066c4df562030808c9ccd7f8.tar.gz
platform_external_skqp-41e010cb901c0da9066c4df562030808c9ccd7f8.tar.bz2
platform_external_skqp-41e010cb901c0da9066c4df562030808c9ccd7f8.zip
Revert[2] SkDraw and all Blitters to use pixmap instead of bitmapi
This reverts commit b3f0ec9f9967da2f80f0d842cb7fd53617b48de3. BUG=skia: Review URL: https://codereview.chromium.org/1168303006
Diffstat (limited to 'src/core/SkDeviceLooper.cpp')
-rw-r--r--src/core/SkDeviceLooper.cpp31
1 files changed, 13 insertions, 18 deletions
diff --git a/src/core/SkDeviceLooper.cpp b/src/core/SkDeviceLooper.cpp
index a8350cc027..840a050436 100644
--- a/src/core/SkDeviceLooper.cpp
+++ b/src/core/SkDeviceLooper.cpp
@@ -7,17 +7,16 @@
#include "SkDeviceLooper.h"
-SkDeviceLooper::SkDeviceLooper(const SkBitmap& base,
- const SkRasterClip& rc,
- const SkIRect& bounds, bool aa)
- : fBaseBitmap(base)
+SkDeviceLooper::SkDeviceLooper(const SkPixmap& base, const SkRasterClip& rc, const SkIRect& bounds,
+ bool aa)
+ : fBaseDst(base)
, fBaseRC(rc)
, fSubsetRC(rc.isForceConservativeRects())
, fDelta(aa ? kAA_Delta : kBW_Delta)
{
// sentinels that next() has not yet been called, and so our mapper functions
// should not be called either.
- fCurrBitmap = NULL;
+ fCurrDst = NULL;
fCurrRC = NULL;
if (!rc.isEmpty()) {
@@ -38,12 +37,11 @@ SkDeviceLooper::SkDeviceLooper(const SkBitmap& base,
}
}
-SkDeviceLooper::~SkDeviceLooper() {
-}
+SkDeviceLooper::~SkDeviceLooper() {}
void SkDeviceLooper::mapRect(SkRect* dst, const SkRect& src) const {
SkASSERT(kDone_State != fState);
- SkASSERT(fCurrBitmap);
+ SkASSERT(fCurrDst);
SkASSERT(fCurrRC);
*dst = src;
@@ -53,12 +51,11 @@ void SkDeviceLooper::mapRect(SkRect* dst, const SkRect& src) const {
void SkDeviceLooper::mapMatrix(SkMatrix* dst, const SkMatrix& src) const {
SkASSERT(kDone_State != fState);
- SkASSERT(fCurrBitmap);
+ SkASSERT(fCurrDst);
SkASSERT(fCurrRC);
*dst = src;
- dst->postTranslate(SkIntToScalar(-fCurrOffset.fX),
- SkIntToScalar(-fCurrOffset.fY));
+ dst->postTranslate(SkIntToScalar(-fCurrOffset.fX), SkIntToScalar(-fCurrOffset.fY));
}
bool SkDeviceLooper::computeCurrBitmapAndClip() {
@@ -66,16 +63,14 @@ bool SkDeviceLooper::computeCurrBitmapAndClip() {
SkIRect r = SkIRect::MakeXYWH(fCurrOffset.x(), fCurrOffset.y(),
fDelta, fDelta);
- if (!fBaseBitmap.extractSubset(&fSubsetBitmap, r)) {
+ if (!fBaseDst.extractSubset(&fSubsetDst, r)) {
fSubsetRC.setEmpty();
} else {
- fSubsetBitmap.lockPixels();
fBaseRC.translate(-r.left(), -r.top(), &fSubsetRC);
- (void)fSubsetRC.op(SkIRect::MakeWH(fDelta, fDelta),
- SkRegion::kIntersect_Op);
+ (void)fSubsetRC.op(SkIRect::MakeWH(fDelta, fDelta), SkRegion::kIntersect_Op);
}
- fCurrBitmap = &fSubsetBitmap;
+ fCurrDst = &fSubsetDst;
fCurrRC = &fSubsetRC;
return !fCurrRC->isEmpty();
}
@@ -107,8 +102,8 @@ bool SkDeviceLooper::next() {
case kSimple_State:
// first time for simple
- if (NULL == fCurrBitmap) {
- fCurrBitmap = &fBaseBitmap;
+ if (NULL == fCurrDst) {
+ fCurrDst = &fBaseDst;
fCurrRC = &fBaseRC;
fCurrOffset.set(0, 0);
return true;