• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 
2 /*
3  * Copyright 2013 Google Inc.
4  *
5  * Use of this source code is governed by a BSD-style license that can be
6  * found in the LICENSE file.
7  */
8 
9 #include "GrTypes.h"
10 #include "GrColor.h"
11 
12 #ifndef GrBlend_DEFINED
13 #define GrBlend_DEFINED
14 
GrBlendCoeffRefsSrc(GrBlendCoeff coeff)15 static inline bool GrBlendCoeffRefsSrc(GrBlendCoeff coeff) {
16     switch (coeff) {
17         case kSC_GrBlendCoeff:
18         case kISC_GrBlendCoeff:
19         case kSA_GrBlendCoeff:
20         case kISA_GrBlendCoeff:
21             return true;
22         default:
23             return false;
24     }
25 }
26 
GrBlendCoeffRefsDst(GrBlendCoeff coeff)27 static inline bool GrBlendCoeffRefsDst(GrBlendCoeff coeff) {
28     switch (coeff) {
29         case kDC_GrBlendCoeff:
30         case kIDC_GrBlendCoeff:
31         case kDA_GrBlendCoeff:
32         case kIDA_GrBlendCoeff:
33             return true;
34         default:
35             return false;
36     }
37 }
38 
39 GrColor GrSimplifyBlend(GrBlendCoeff* srcCoeff,
40                         GrBlendCoeff* dstCoeff,
41                         GrColor srcColor, uint32_t srcCompFlags,
42                         GrColor dstColor, uint32_t dstCompFlags,
43                         GrColor constantColor);
44 
45 #endif
46