diff options
author | reed <reed@google.com> | 2015-03-24 05:18:09 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-03-24 05:18:09 -0700 |
commit | 92b47c49016749249ff8521e424c4373b4a74241 (patch) | |
tree | 610773be56816c44489f9736875195066309e211 /src/core/SkColorFilter.cpp | |
parent | b67eb2f9b9ec097aa963245a85be13daec09d2cc (diff) |
Revert of remove colorfilter native-565 support. complicating w/ no real value. (patchset #2 id:20001 of https://codereview.chromium.org/1015533011/)
Reason for revert:
skia/ext/benchmarking_canvas.cc references HasFilter16 :(
Original issue's description:
> remove colorfilter native-565 support. complicating w/ no real value.
>
> BUG=skia:
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/2151353d161fe389cdc0db62cfe1932c7680f710
TBR=reed@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1022673007
Diffstat (limited to 'src/core/SkColorFilter.cpp')
-rw-r--r-- | src/core/SkColorFilter.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/core/SkColorFilter.cpp b/src/core/SkColorFilter.cpp index 45950ad0b5..0a9cd93e34 100644 --- a/src/core/SkColorFilter.cpp +++ b/src/core/SkColorFilter.cpp @@ -22,6 +22,15 @@ bool SkColorFilter::asComponentTable(SkBitmap*) const { return false; } +void SkColorFilter::filterSpan16(const uint16_t s[], int count, uint16_t d[]) const { + SkASSERT(this->getFlags() & SkColorFilter::kHasFilter16_Flag); + SkDEBUGFAIL("missing implementation of SkColorFilter::filterSpan16"); + + if (d != s) { + memcpy(d, s, count * sizeof(uint16_t)); + } +} + SkColor SkColorFilter::filterColor(SkColor c) const { SkPMColor dst, src = SkPreMultiplyColor(c); this->filterSpan(&src, 1, &dst); @@ -52,6 +61,12 @@ public: fOuter->filterSpan(result, count, result); } + void filterSpan16(const uint16_t shader[], int count, uint16_t result[]) const SK_OVERRIDE { + SkASSERT(this->getFlags() & kHasFilter16_Flag); + fInner->filterSpan16(shader, count, result); + fOuter->filterSpan16(result, count, result); + } + #ifndef SK_IGNORE_TO_STRING void toString(SkString* str) const SK_OVERRIDE { SkString outerS, innerS; |