Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(746)

Unified Diff: src/effects/gradients/SkLinearGradient.h

Issue 1436663003: Implement multi-color-stops in linear gradients using Sk4f (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/effects/gradients/SkLinearGradient.h
diff --git a/src/effects/gradients/SkLinearGradient.h b/src/effects/gradients/SkLinearGradient.h
index 488775ea9330dd35e2a6b30ebb2a377829ffa18d..34bafa60ec60441a9753c52622b6bc107d4514a5 100644
--- a/src/effects/gradients/SkLinearGradient.h
+++ b/src/effects/gradients/SkLinearGradient.h
@@ -9,6 +9,7 @@
#define SkLinearGradient_DEFINED
#include "SkGradientShaderPriv.h"
+#include "SkNx.h"
class SkLinearGradient : public SkGradientShaderBase {
public:
@@ -19,12 +20,18 @@ public:
class LinearGradientContext : public SkGradientShaderBase::GradientShaderBaseContext {
public:
LinearGradientContext(const SkLinearGradient&, const ContextRec&);
- ~LinearGradientContext() {}
+ ~LinearGradientContext() override;
void shadeSpan(int x, int y, SkPMColor dstC[], int count) override;
void shadeSpan16(int x, int y, uint16_t dstC[], int count) override;
private:
+ Sk4f* fColors4;
+ float* fPos;
+ float* fPosScale;
+ int fColorCount;
+ void shadeSpan4(int x, int y, SkPMColor dstC[], int count);
+
typedef SkGradientShaderBase::GradientShaderBaseContext INHERITED;
};

Powered by Google App Engine
This is Rietveld 408576698