Lines Matching defs:GrColor4f
174 * Similarly, GrColor4f is 4 floats for R, G, B, A, in that order. And like GrColor, whether
177 struct GrColor4f {
180 GrColor4f() {}
181 GrColor4f(float r, float g, float b, float a) {
191 GrColor4f(Illegal_Constructor) {
198 static GrColor4f OpaqueWhite() {
199 return GrColor4f(1.0f, 1.0f, 1.0f, 1.0f);
202 static GrColor4f TransparentBlack() {
203 return GrColor4f(0.0f, 0.0f, 0.0f, 0.0f);
206 static GrColor4f FromGrColor(GrColor color) {
207 GrColor4f result;
212 static GrColor4f FromSkColor4f(const SkColor4f& color) {
213 return GrColor4f(color.fR, color.fG, color.fB, color.fA);
216 GrColor4f modulate(const GrColor4f& x) const {
217 return GrColor4f(fRGBA[0] * x.fRGBA[0],
223 GrColor4f mulByScalar(float x) const {
224 return GrColor4f(fRGBA[0] * x, fRGBA[1] * x, fRGBA[2] * x, fRGBA[3] * x);
227 bool operator==(const GrColor4f& other) const {
234 bool operator!=(const GrColor4f& other) const {
250 GrColor4f opaque() const {
251 return GrColor4f(fRGBA[0], fRGBA[1], fRGBA[2], 1.0f);
258 GrColor4f premul() const {
260 return GrColor4f(fRGBA[0] * a, fRGBA[1] * a, fRGBA[2] * a, a);
263 GrColor4f unpremul() const {
266 return GrColor4f(0.0f, 0.0f, 0.0f, 0.0f);
269 return GrColor4f(fRGBA[0] * invAlpha, fRGBA[1] * invAlpha, fRGBA[2] * invAlpha, a);