Index: src/core/SkBlitter_ARGB32.cpp |
diff --git a/src/core/SkBlitter_ARGB32.cpp b/src/core/SkBlitter_ARGB32.cpp |
index f2de82a2e9e2ea8cc2748a9a7ea851437771d03b..683acf0aaef01248a4e0875ecdf32e060676145b 100644 |
--- a/src/core/SkBlitter_ARGB32.cpp |
+++ b/src/core/SkBlitter_ARGB32.cpp |
@@ -14,7 +14,7 @@ |
/////////////////////////////////////////////////////////////////////////////// |
-static void SkARGB32_Blit32(const SkBitmap& device, const SkMask& mask, |
+static void SkARGB32_Blit32(const SkPixmap& device, const SkMask& mask, |
const SkIRect& clip, SkPMColor srcColor) { |
U8CPU alpha = SkGetPackedA32(srcColor); |
unsigned flags = SkBlitRow::kSrcPixelAlpha_Flag32; |
@@ -28,7 +28,7 @@ static void SkARGB32_Blit32(const SkBitmap& device, const SkMask& mask, |
int width = clip.width(); |
int height = clip.height(); |
- SkPMColor* dstRow = device.getAddr32(x, y); |
+ SkPMColor* dstRow = device.writable_addr32(x, y); |
const SkPMColor* srcRow = reinterpret_cast<const SkPMColor*>(mask.getAddr8(x, y)); |
do { |
@@ -40,7 +40,7 @@ static void SkARGB32_Blit32(const SkBitmap& device, const SkMask& mask, |
////////////////////////////////////////////////////////////////////////////////////// |
-SkARGB32_Blitter::SkARGB32_Blitter(const SkBitmap& device, const SkPaint& paint) |
+SkARGB32_Blitter::SkARGB32_Blitter(const SkPixmap& device, const SkPaint& paint) |
: INHERITED(device) { |
SkColor color = paint.getColor(); |
fColor = color; |
@@ -54,7 +54,7 @@ SkARGB32_Blitter::SkARGB32_Blitter(const SkBitmap& device, const SkPaint& paint) |
fPMColor = SkPackARGB32(fSrcA, fSrcR, fSrcG, fSrcB); |
} |
-const SkBitmap* SkARGB32_Blitter::justAnOpaqueColor(uint32_t* value) { |
+const SkPixmap* SkARGB32_Blitter::justAnOpaqueColor(uint32_t* value) { |
if (255 == fSrcA) { |
*value = fPMColor; |
return &fDevice; |
@@ -70,7 +70,7 @@ const SkBitmap* SkARGB32_Blitter::justAnOpaqueColor(uint32_t* value) { |
void SkARGB32_Blitter::blitH(int x, int y, int width) { |
SkASSERT(x >= 0 && y >= 0 && x + width <= fDevice.width()); |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
SkBlitRow::Color32(device, device, width, fPMColor); |
} |
@@ -81,7 +81,7 @@ void SkARGB32_Blitter::blitAntiH(int x, int y, const SkAlpha antialias[], |
} |
uint32_t color = fPMColor; |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
unsigned opaqueMask = fSrcA; // if fSrcA is 0xFF, then we will catch the fast opaque case |
for (;;) { |
@@ -106,16 +106,16 @@ void SkARGB32_Blitter::blitAntiH(int x, int y, const SkAlpha antialias[], |
} |
void SkARGB32_Blitter::blitAntiH2(int x, int y, U8CPU a0, U8CPU a1) { |
- uint32_t* device = fDevice.getAddr32(x, y); |
- SkDEBUGCODE((void)fDevice.getAddr32(x + 1, y);) |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
+ SkDEBUGCODE((void)fDevice.writable_addr32(x + 1, y);) |
device[0] = SkBlendARGB32(fPMColor, device[0], a0); |
device[1] = SkBlendARGB32(fPMColor, device[1], a1); |
} |
void SkARGB32_Blitter::blitAntiV2(int x, int y, U8CPU a0, U8CPU a1) { |
- uint32_t* device = fDevice.getAddr32(x, y); |
- SkDEBUGCODE((void)fDevice.getAddr32(x, y + 1);) |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
+ SkDEBUGCODE((void)fDevice.writable_addr32(x, y + 1);) |
device[0] = SkBlendARGB32(fPMColor, device[0], a0); |
device = (uint32_t*)((char*)device + fDevice.rowBytes()); |
@@ -139,7 +139,7 @@ void SkARGB32_Blitter::blitAntiV2(int x, int y, U8CPU a0, U8CPU a1) { |
#define SK_BLITBWMASK_NAME SkARGB32_BlitBW |
#define SK_BLITBWMASK_ARGS , SkPMColor color |
#define SK_BLITBWMASK_BLIT8(mask, dst) solid_8_pixels(mask, dst, color) |
-#define SK_BLITBWMASK_GETADDR getAddr32 |
+#define SK_BLITBWMASK_GETADDR writable_addr32 |
#define SK_BLITBWMASK_DEVTYPE uint32_t |
#include "SkBlitBWMaskTemplate.h" |
@@ -158,7 +158,7 @@ void SkARGB32_Blitter::blitAntiV2(int x, int y, U8CPU a0, U8CPU a1) { |
#define SK_BLITBWMASK_NAME SkARGB32_BlendBW |
#define SK_BLITBWMASK_ARGS , uint32_t sc, unsigned dst_scale |
#define SK_BLITBWMASK_BLIT8(mask, dst) blend_8_pixels(mask, dst, sc, dst_scale) |
-#define SK_BLITBWMASK_GETADDR getAddr32 |
+#define SK_BLITBWMASK_GETADDR writable_addr32 |
#define SK_BLITBWMASK_DEVTYPE uint32_t |
#include "SkBlitBWMaskTemplate.h" |
@@ -197,16 +197,16 @@ void SkARGB32_Opaque_Blitter::blitMask(const SkMask& mask, |
} |
void SkARGB32_Opaque_Blitter::blitAntiH2(int x, int y, U8CPU a0, U8CPU a1) { |
- uint32_t* device = fDevice.getAddr32(x, y); |
- SkDEBUGCODE((void)fDevice.getAddr32(x + 1, y);) |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
+ SkDEBUGCODE((void)fDevice.writable_addr32(x + 1, y);) |
device[0] = SkFastFourByteInterp(fPMColor, device[0], a0); |
device[1] = SkFastFourByteInterp(fPMColor, device[1], a1); |
} |
void SkARGB32_Opaque_Blitter::blitAntiV2(int x, int y, U8CPU a0, U8CPU a1) { |
- uint32_t* device = fDevice.getAddr32(x, y); |
- SkDEBUGCODE((void)fDevice.getAddr32(x, y + 1);) |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
+ SkDEBUGCODE((void)fDevice.writable_addr32(x, y + 1);) |
device[0] = SkFastFourByteInterp(fPMColor, device[0], a0); |
device = (uint32_t*)((char*)device + fDevice.rowBytes()); |
@@ -220,7 +220,7 @@ void SkARGB32_Blitter::blitV(int x, int y, int height, SkAlpha alpha) { |
return; |
} |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
uint32_t color = fPMColor; |
if (alpha != 255) { |
@@ -242,7 +242,7 @@ void SkARGB32_Blitter::blitRect(int x, int y, int width, int height) { |
return; |
} |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
uint32_t color = fPMColor; |
size_t rowBytes = fDevice.rowBytes(); |
@@ -260,7 +260,7 @@ void SkARGB32_Blitter::blitRect(int x, int y, int width, int height) { |
void SkARGB32_Black_Blitter::blitAntiH(int x, int y, const SkAlpha antialias[], |
const int16_t runs[]) { |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
SkPMColor black = (SkPMColor)(SK_A32_MASK << SK_A32_SHIFT); |
for (;;) { |
@@ -290,16 +290,16 @@ void SkARGB32_Black_Blitter::blitAntiH(int x, int y, const SkAlpha antialias[], |
} |
void SkARGB32_Black_Blitter::blitAntiH2(int x, int y, U8CPU a0, U8CPU a1) { |
- uint32_t* device = fDevice.getAddr32(x, y); |
- SkDEBUGCODE((void)fDevice.getAddr32(x + 1, y);) |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
+ SkDEBUGCODE((void)fDevice.writable_addr32(x + 1, y);) |
device[0] = (a0 << SK_A32_SHIFT) + SkAlphaMulQ(device[0], 256 - a0); |
device[1] = (a1 << SK_A32_SHIFT) + SkAlphaMulQ(device[1], 256 - a1); |
} |
void SkARGB32_Black_Blitter::blitAntiV2(int x, int y, U8CPU a0, U8CPU a1) { |
- uint32_t* device = fDevice.getAddr32(x, y); |
- SkDEBUGCODE((void)fDevice.getAddr32(x, y + 1);) |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
+ SkDEBUGCODE((void)fDevice.writable_addr32(x, y + 1);) |
device[0] = (a0 << SK_A32_SHIFT) + SkAlphaMulQ(device[0], 256 - a0); |
device = (uint32_t*)((char*)device + fDevice.rowBytes()); |
@@ -319,7 +319,7 @@ static void blend_srcmode(SkPMColor* SK_RESTRICT device, |
} |
} |
-SkARGB32_Shader_Blitter::SkARGB32_Shader_Blitter(const SkBitmap& device, |
+SkARGB32_Shader_Blitter::SkARGB32_Shader_Blitter(const SkPixmap& device, |
const SkPaint& paint, SkShader::Context* shaderContext) |
: INHERITED(device, paint, shaderContext) |
{ |
@@ -363,7 +363,7 @@ SkARGB32_Shader_Blitter::~SkARGB32_Shader_Blitter() { |
void SkARGB32_Shader_Blitter::blitH(int x, int y, int width) { |
SkASSERT(x >= 0 && y >= 0 && x + width <= fDevice.width()); |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
if (fShadeDirectlyIntoDevice) { |
fShaderContext->shadeSpan(x, y, device, width); |
@@ -382,7 +382,7 @@ void SkARGB32_Shader_Blitter::blitRect(int x, int y, int width, int height) { |
SkASSERT(x >= 0 && y >= 0 && |
x + width <= fDevice.width() && y + height <= fDevice.height()); |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
size_t deviceRB = fDevice.rowBytes(); |
SkShader::Context* shaderContext = fShaderContext; |
SkPMColor* span = fBuffer; |
@@ -457,7 +457,7 @@ void SkARGB32_Shader_Blitter::blitRect(int x, int y, int width, int height) { |
void SkARGB32_Shader_Blitter::blitAntiH(int x, int y, const SkAlpha antialias[], |
const int16_t runs[]) { |
SkPMColor* span = fBuffer; |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
SkShader::Context* shaderContext = fShaderContext; |
if (fXfermode && !fShadeDirectlyIntoDevice) { |
@@ -558,7 +558,7 @@ void SkARGB32_Shader_Blitter::blitMask(const SkMask& mask, const SkIRect& clip) |
int y = clip.fTop; |
int height = clip.height(); |
- char* dstRow = (char*)fDevice.getAddr32(x, y); |
+ char* dstRow = (char*)fDevice.writable_addr32(x, y); |
const size_t dstRB = fDevice.rowBytes(); |
const uint8_t* maskRow = (const uint8_t*)mask.getAddr(x, y); |
const size_t maskRB = mask.fRowBytes; |
@@ -589,7 +589,7 @@ void SkARGB32_Shader_Blitter::blitMask(const SkMask& mask, const SkIRect& clip) |
void SkARGB32_Shader_Blitter::blitV(int x, int y, int height, SkAlpha alpha) { |
SkASSERT(x >= 0 && y >= 0 && y + height <= fDevice.height()); |
- uint32_t* device = fDevice.getAddr32(x, y); |
+ uint32_t* device = fDevice.writable_addr32(x, y); |
size_t deviceRB = fDevice.rowBytes(); |
SkShader::Context* shaderContext = fShaderContext; |