blob: e70d9457772c30e1f5a5660c5a25b98c58043a1a [file] [log] [blame]
commit-bot@chromium.org24ab3b02013-08-14 21:56:37 +00001
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
15static 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
27static 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
39GrColor GrSimplifyBlend(GrBlendCoeff* srcCoeff,
40 GrBlendCoeff* dstCoeff,
41 GrColor srcColor, uint32_t srcCompFlags,
42 GrColor dstColor, uint32_t dstCompFlags,
43 GrColor constantColor);
44
45#endif