aboutsummaryrefslogtreecommitdiffhomepage
path: root/bench/PremulAndUnpremulAlphaOpsBench.cpp
diff options
context:
space:
mode:
authorGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-03-07 03:25:16 +0000
committerGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2014-03-07 03:25:16 +0000
commit4cd9e2169e35cd67ee7358acea6541245e1d1744 (patch)
tree6e78d84ef91181b41f5c45a73bab003c63780f10 /bench/PremulAndUnpremulAlphaOpsBench.cpp
parenta5572e5bb2a2bbeeb59de0741c2527869d365a0c (diff)
Add SkCanvas::writePixels that takes info+pixels directly
add corresponding methods to device (w/ diff name to avoid colliding with exising virtuals) BUG=skia: R=bsalomon@google.com, robertphillips@google.com, junov@google.com, junov@chromium.org Author: reed@google.com Review URL: https://codereview.chromium.org/180113010 git-svn-id: http://skia.googlecode.com/svn/trunk@13697 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'bench/PremulAndUnpremulAlphaOpsBench.cpp')
-rw-r--r--bench/PremulAndUnpremulAlphaOpsBench.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/bench/PremulAndUnpremulAlphaOpsBench.cpp b/bench/PremulAndUnpremulAlphaOpsBench.cpp
index 93c84c9095..4afa43fe6e 100644
--- a/bench/PremulAndUnpremulAlphaOpsBench.cpp
+++ b/bench/PremulAndUnpremulAlphaOpsBench.cpp
@@ -1,4 +1,3 @@
-
/*
* Copyright 2013 Google Inc.
*
@@ -10,6 +9,7 @@
#include "SkCanvas.h"
#include "SkConfig8888.h"
#include "SkString.h"
+#include "sk_tool_utils.h"
class PremulAndUnpremulAlphaOpsBench : public SkBenchmark {
public:
@@ -45,9 +45,16 @@ protected:
bmp2.setConfig(SkBitmap::kARGB_8888_Config, size.width(),
size.height());
+ SkColorType ct;
+ SkAlphaType at;
+ sk_tool_utils::config8888_to_imagetypes(fUnPremulConfig, &ct, &at);
+ if (bmp1.isOpaque()) {
+ at = kOpaque_SkAlphaType;
+ }
+
for (int loop = 0; loop < loops; ++loop) {
// Unpremul -> Premul
- canvas->writePixels(bmp1, 0, 0, fUnPremulConfig);
+ sk_tool_utils::write_pixels(canvas, bmp1, 0, 0, ct, at);
// Premul -> Unpremul
canvas->readPixels(&bmp2, 0, 0, fUnPremulConfig);
}