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

Unified Diff: src/core/SkColor.cpp

Issue 1622983002: Revert[2] of expand unitests for color4f (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: call the generic destructor, so we go throught the virtual chain Created 4 years, 11 months 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
« no previous file with comments | « include/core/SkShader.h ('k') | tests/SkColor4fTest.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/core/SkColor.cpp
diff --git a/src/core/SkColor.cpp b/src/core/SkColor.cpp
index c9f4a1433dfd9a856c5d7f6bed4725147e0bde89..1794cd7d909c68a23f102d25cfe9e4c73ed0ed2f 100644
--- a/src/core/SkColor.cpp
+++ b/src/core/SkColor.cpp
@@ -104,9 +104,10 @@ SkColor SkHSVToColor(U8CPU a, const SkScalar hsv[3]) {
///////////////////////////////////////////////////////////////////////////////////////////////////
#include "SkNx.h"
-SkColor4f SkColor4f::Pin(float a, float r, float g, float b) {
- SkColor4f c4;
- Sk4f::Min(Sk4f::Max(Sk4f(a, r, g, b), Sk4f(0)), Sk4f(1)).store(c4.vec());
+SkPM4f SkPM4f::FromPMColor(SkPMColor c) {
+ Sk4f value = SkNx_cast<float>(Sk4b::Load((const uint8_t*)&c));
+ SkPM4f c4;
+ (value * Sk4f(1.0f / 255)).store(c4.fVec);
return c4;
}
@@ -117,6 +118,12 @@ SkColor4f SkColor4f::FromColor(SkColor c) {
return c4;
}
+SkColor4f SkColor4f::Pin(float a, float r, float g, float b) {
+ SkColor4f c4;
+ Sk4f::Min(Sk4f::Max(Sk4f(a, r, g, b), Sk4f(0)), Sk4f(1)).store(c4.vec());
+ return c4;
+}
+
SkPM4f SkColor4f::premul() const {
auto src = Sk4f::Load(this->pin().vec());
float srcAlpha = src.kth<0>(); // need the pinned version of our alpha
« no previous file with comments | « include/core/SkShader.h ('k') | tests/SkColor4fTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698