| Index: src/gpu/GrXferProcessor.cpp
|
| diff --git a/src/gpu/GrXferProcessor.cpp b/src/gpu/GrXferProcessor.cpp
|
| index bc79b2dbe1a3ea71c895a33a2886d6b91b57c899..8eb6ff77c40ccec3b5e391c1510da9f1442fc790 100644
|
| --- a/src/gpu/GrXferProcessor.cpp
|
| +++ b/src/gpu/GrXferProcessor.cpp
|
| @@ -64,6 +64,100 @@ bool GrXferProcessor::willNeedXferBarrier(const GrRenderTarget* rt,
|
| return this->onWillNeedXferBarrier(rt, caps, outBarrierType);
|
| }
|
|
|
| +#ifdef SK_DEBUG
|
| +static const char* equation_string(GrBlendEquation eq) {
|
| + switch (eq) {
|
| + case kAdd_GrBlendEquation:
|
| + return "add";
|
| + case kSubtract_GrBlendEquation:
|
| + return "subtract";
|
| + case kReverseSubtract_GrBlendEquation:
|
| + return "reverse_subtract";
|
| + case kScreen_GrBlendEquation:
|
| + return "screen";
|
| + case kOverlay_GrBlendEquation:
|
| + return "overlay";
|
| + case kDarken_GrBlendEquation:
|
| + return "darken";
|
| + case kLighten_GrBlendEquation:
|
| + return "lighten";
|
| + case kColorDodge_GrBlendEquation:
|
| + return "color_dodge";
|
| + case kColorBurn_GrBlendEquation:
|
| + return "color_burn";
|
| + case kHardLight_GrBlendEquation:
|
| + return "hard_light";
|
| + case kSoftLight_GrBlendEquation:
|
| + return "soft_light";
|
| + case kDifference_GrBlendEquation:
|
| + return "difference";
|
| + case kExclusion_GrBlendEquation:
|
| + return "exclusion";
|
| + case kMultiply_GrBlendEquation:
|
| + return "multiply";
|
| + case kHSLHue_GrBlendEquation:
|
| + return "hsl_hue";
|
| + case kHSLSaturation_GrBlendEquation:
|
| + return "hsl_saturation";
|
| + case kHSLColor_GrBlendEquation:
|
| + return "hsl_color";
|
| + case kHSLLuminosity_GrBlendEquation:
|
| + return "hsl_luminosity";
|
| + };
|
| + return "";
|
| +}
|
| +
|
| +static const char* coeff_string(GrBlendCoeff coeff) {
|
| + switch (coeff) {
|
| + case kZero_GrBlendCoeff:
|
| + return "zero";
|
| + case kOne_GrBlendCoeff:
|
| + return "one";
|
| + case kSC_GrBlendCoeff:
|
| + return "src_color";
|
| + case kISC_GrBlendCoeff:
|
| + return "inv_src_color";
|
| + case kDC_GrBlendCoeff:
|
| + return "dst_color";
|
| + case kIDC_GrBlendCoeff:
|
| + return "inv_dst_color";
|
| + case kSA_GrBlendCoeff:
|
| + return "src_alpha";
|
| + case kISA_GrBlendCoeff:
|
| + return "inv_src_alpha";
|
| + case kDA_GrBlendCoeff:
|
| + return "dst_alpha";
|
| + case kIDA_GrBlendCoeff:
|
| + return "inv_dst_alpha";
|
| + case kConstC_GrBlendCoeff:
|
| + return "const_color";
|
| + case kIConstC_GrBlendCoeff:
|
| + return "inv_const_color";
|
| + case kConstA_GrBlendCoeff:
|
| + return "const_alpha";
|
| + case kIConstA_GrBlendCoeff:
|
| + return "inv_const_alpha";
|
| + case kS2C_GrBlendCoeff:
|
| + return "src2_color";
|
| + case kIS2C_GrBlendCoeff:
|
| + return "inv_src2_color";
|
| + case kS2A_GrBlendCoeff:
|
| + return "src2_alpha";
|
| + case kIS2A_GrBlendCoeff:
|
| + return "inv_src2_alpha";
|
| + }
|
| + return "";
|
| +}
|
| +
|
| +SkString GrXferProcessor::BlendInfo::dump() const {
|
| + SkString out;
|
| + out.printf("write_color(%d) equation(%s) src_coeff(%s) dst_coeff:(%s) const(0x%08x)",
|
| + fWriteColor, equation_string(fEquation), coeff_string(fSrcBlend),
|
| + coeff_string(fDstBlend), fBlendConstant);
|
| + return out;
|
| +}
|
| +#endif
|
| +
|
| ///////////////////////////////////////////////////////////////////////////////
|
|
|
| GrXferProcessor* GrXPFactory::createXferProcessor(const GrProcOptInfo& colorPOI,
|
|
|