aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@google.com>2015-04-27 14:51:16 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-04-27 14:51:16 -0700
commit641c3ff7c680ef7935d47d2e68f8301acc79e3de (patch)
tree0739bd83543af31c22ef25e1b352cedb56a4ee77 /src/effects
parentd65dc0cedd5b50dd407b6ff8fdc39123f11511cc (diff)
Revert of De-proc Color32 (patchset #5 id:80001 of https://codereview.chromium.org/1104183004/)
Reason for revert: duh Original issue's description: > De-proc Color32 > > Also strips SK_SUPPORT_LEGACY_COLOR32_MATH, > which is no longer needed. > > Seems handy to have SkTypes include the relevant intrinsics when > we know we've got them, but I'm not married to it. > > Locally this looks like a pointlessly small perf win, but I'm mostly > keen to get all the code together. > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/376e9bc206b69d9190f38dfebb132a8769bbd72b > > Committed: https://skia.googlesource.com/skia/+/d65dc0cedd5b50dd407b6ff8fdc39123f11511cc TBR=reed@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1102363006
Diffstat (limited to 'src/effects')
-rw-r--r--src/effects/SkColorFilters.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/effects/SkColorFilters.cpp b/src/effects/SkColorFilters.cpp
index cdbae98bb0..87a5a20821 100644
--- a/src/effects/SkColorFilters.cpp
+++ b/src/effects/SkColorFilters.cpp
@@ -40,7 +40,7 @@ uint32_t SkModeColorFilter::getFlags() const {
void SkModeColorFilter::filterSpan(const SkPMColor shader[], int count, SkPMColor result[]) const {
SkPMColor color = fPMColor;
SkXfermodeProc proc = fProc;
-
+
for (int i = 0; i < count; i++) {
result[i] = proc(color, shader[i]);
}
@@ -394,13 +394,19 @@ private:
class SrcOver_SkModeColorFilter : public SkModeColorFilter {
public:
- SrcOver_SkModeColorFilter(SkColor color) : INHERITED(color, SkXfermode::kSrcOver_Mode) { }
+ SrcOver_SkModeColorFilter(SkColor color)
+ : INHERITED(color, SkXfermode::kSrcOver_Mode) {
+ fColor32Proc = SkBlitRow::ColorProcFactory();
+ }
void filterSpan(const SkPMColor shader[], int count, SkPMColor result[]) const override {
- SkBlitRow::Color32(result, shader, count, this->getPMColor());
+ fColor32Proc(result, shader, count, this->getPMColor());
}
private:
+
+ SkBlitRow::ColorProc fColor32Proc;
+
typedef SkModeColorFilter INHERITED;
};