Chromium Code Reviews

Unified Diff: src/core/SkBitmapFilter.h

Issue 1711683002: remove legacy bitmap filter (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
« no previous file with comments | « no previous file | src/core/SkBitmapScaler.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/core/SkBitmapFilter.h
diff --git a/src/core/SkBitmapFilter.h b/src/core/SkBitmapFilter.h
index dc3ea693b83f8f04057ce79dea064ee5ca8ae14f..6fa8edde3460ab3992cc14f0e90c216f83665436 100644
--- a/src/core/SkBitmapFilter.h
+++ b/src/core/SkBitmapFilter.h
@@ -12,9 +12,7 @@
#include "SkMath.h"
#include "SkScalar.h"
-#ifndef SK_SUPPORT_LEGACY_BITMAP_FILTER
#include "SkNx.h"
-#endif
// size of the precomputed bitmap filter tables for high quality filtering.
// Used to precompute the shape of the filter kernel.
@@ -52,7 +50,6 @@ public:
float invWidth() const { return fInvWidth; }
virtual float evaluate(float x) const = 0;
-#ifndef SK_SUPPORT_LEGACY_BITMAP_FILTER
virtual float evaluate_n(float val, float diff, int count, float* output) const {
float sum = 0;
for (int index = 0; index < count; index++) {
@@ -63,7 +60,6 @@ public:
}
return sum;
}
-#endif
protected:
float fWidth;
@@ -90,9 +86,6 @@ private:
class SkMitchellFilter final : public SkBitmapFilter {
public:
-#ifdef SK_SUPPORT_LEGACY_BITMAP_FILTER
- SkMitchellFilter() : INHERITED(2), B(1.f / 3), C(1.f / 3) {}
-#else
SkMitchellFilter()
: INHERITED(2)
, fB(1.f / 3.f)
@@ -105,39 +98,20 @@ public:
, fB2(-18 + 12*fB + 6*fC)
, fD2(6 - 2*fB)
{}
-#endif
float evaluate(float x) const override {
x = fabsf(x);
if (x > 2.f) {
return 0;
} else if (x > 1.f) {
-#ifdef SK_SUPPORT_LEGACY_BITMAP_FILTER
- return ((-B - 6*C) * x*x*x + (6*B + 30*C) * x*x +
- (-12*B - 48*C) * x + (8*B + 24*C)) * (1.f/6.f);
-#else
return (((fA1 * x + fB1) * x + fC1) * x + fD1) * (1.f/6.f);
-#endif
} else {
-#ifdef SK_SUPPORT_LEGACY_BITMAP_FILTER
- return ((12 - 9*B - 6*C) * x*x*x +
- (-18 + 12*B + 6*C) * x*x +
- (6 - 2*B)) * (1.f/6.f);
-#else
return ((fA2 * x + fB2) * x*x + fD2) * (1.f/6.f);
-#endif
}
}
-#ifndef SK_SUPPORT_LEGACY_BITMAP_FILTER
- // TODO : native Sk4f abs
- static Sk4f abs(const Sk4f& x) {
- Sk4f neg = x < Sk4f(0);
- return neg.thenElse(Sk4f(0) - x, x);
- }
-
Sk4f evalcore_n(const Sk4f& val) const {
- Sk4f x = abs(val);
+ Sk4f x = val.abs();
f(malita) 2016/02/18 13:43:04 Hopefully no side effects?
Sk4f over2 = x > Sk4f(2);
Sk4f over1 = x > Sk4f(1);
Sk4f poly1 = (((Sk4f(fA1) * x + Sk4f(fB1)) * x + Sk4f(fC1)) * x + Sk4f(fD1))
@@ -166,16 +140,11 @@ public:
result += INHERITED::evaluate_n(val, diff, count, output);
return result;
}
-#endif
protected:
-#ifdef SK_SUPPORT_LEGACY_BITMAP_FILTER
- float B, C;
-#else
float fB, fC;
float fA1, fB1, fC1, fD1;
float fA2, fB2, fD2;
-#endif
private:
typedef SkBitmapFilter INHERITED;
};
« no previous file with comments | « no previous file | src/core/SkBitmapScaler.cpp » ('j') | no next file with comments »

Powered by Google App Engine