Move blend enums into GrBlend.h
authorcdalton <cdalton@nvidia.com>
Fri, 12 Jun 2015 15:21:26 +0000 (08:21 -0700)
committerCommit bot <commit-bot@chromium.org>
Fri, 12 Jun 2015 15:21:26 +0000 (08:21 -0700)
Moves blend enums from GrXferProcessor.h to GrBlend.h, makes GrBlend.h
public.

BUG=skia:

Review URL: https://codereview.chromium.org/1180713008

gyp/gpu.gypi
include/gpu/GrBlend.h [moved from src/gpu/GrBlend.h with 74% similarity]
include/gpu/GrXferProcessor.h

index 0396f19..07a93a2 100644 (file)
@@ -12,6 +12,7 @@
 {
   'variables': {
     'skgpu_sources': [
+      '<(skia_include_path)/gpu/GrBlend.h',
       '<(skia_include_path)/gpu/GrCaps.h',
       '<(skia_include_path)/gpu/GrClip.h',
       '<(skia_include_path)/gpu/GrColor.h',
@@ -82,7 +83,6 @@
       '<(skia_src_path)/gpu/GrBatchTarget.h',
       '<(skia_src_path)/gpu/GrBatchTest.cpp',
       '<(skia_src_path)/gpu/GrBatchTest.h',
-      '<(skia_src_path)/gpu/GrBlend.h',
       '<(skia_src_path)/gpu/GrBlurUtils.cpp',
       '<(skia_src_path)/gpu/GrBlurUtils.h',
       '<(skia_src_path)/gpu/GrBufferAllocPool.cpp',
similarity index 74%
rename from src/gpu/GrBlend.h
rename to include/gpu/GrBlend.h
index 7021902..c8b931d 100644 (file)
@@ -7,12 +7,73 @@
  */
 
 #include "GrTypes.h"
-#include "SkTLogic.h"
-#include "GrXferProcessor.h"
+#include "../../src/utils/SkTLogic.h"
 
 #ifndef GrBlend_DEFINED
 #define GrBlend_DEFINED
 
+/**
+ * Equations for alpha-blending.
+ */
+enum GrBlendEquation {
+    // Basic blend equations.
+    kAdd_GrBlendEquation,             //<! Cs*S + Cd*D
+    kSubtract_GrBlendEquation,        //<! Cs*S - Cd*D
+    kReverseSubtract_GrBlendEquation, //<! Cd*D - Cs*S
+
+    // Advanced blend equations. These are described in the SVG and PDF specs.
+    kScreen_GrBlendEquation,
+    kOverlay_GrBlendEquation,
+    kDarken_GrBlendEquation,
+    kLighten_GrBlendEquation,
+    kColorDodge_GrBlendEquation,
+    kColorBurn_GrBlendEquation,
+    kHardLight_GrBlendEquation,
+    kSoftLight_GrBlendEquation,
+    kDifference_GrBlendEquation,
+    kExclusion_GrBlendEquation,
+    kMultiply_GrBlendEquation,
+    kHSLHue_GrBlendEquation,
+    kHSLSaturation_GrBlendEquation,
+    kHSLColor_GrBlendEquation,
+    kHSLLuminosity_GrBlendEquation,
+
+    kFirstAdvancedGrBlendEquation = kScreen_GrBlendEquation,
+    kLast_GrBlendEquation = kHSLLuminosity_GrBlendEquation
+};
+
+static const int kGrBlendEquationCnt = kLast_GrBlendEquation + 1;
+
+
+/**
+ * Coeffecients for alpha-blending.
+ */
+enum GrBlendCoeff {
+    kZero_GrBlendCoeff,    //<! 0
+    kOne_GrBlendCoeff,     //<! 1
+    kSC_GrBlendCoeff,      //<! src color
+    kISC_GrBlendCoeff,     //<! one minus src color
+    kDC_GrBlendCoeff,      //<! dst color
+    kIDC_GrBlendCoeff,     //<! one minus dst color
+    kSA_GrBlendCoeff,      //<! src alpha
+    kISA_GrBlendCoeff,     //<! one minus src alpha
+    kDA_GrBlendCoeff,      //<! dst alpha
+    kIDA_GrBlendCoeff,     //<! one minus dst alpha
+    kConstC_GrBlendCoeff,  //<! constant color
+    kIConstC_GrBlendCoeff, //<! one minus constant color
+    kConstA_GrBlendCoeff,  //<! constant color alpha
+    kIConstA_GrBlendCoeff, //<! one minus constant color alpha
+    kS2C_GrBlendCoeff,
+    kIS2C_GrBlendCoeff,
+    kS2A_GrBlendCoeff,
+    kIS2A_GrBlendCoeff,
+
+    kLast_GrBlendCoeff = kIS2A_GrBlendCoeff
+};
+
+static const int kGrBlendCoeffCnt = kLast_GrBlendCoeff + 1;
+
+
 template<GrBlendCoeff Coeff>
 struct GrTBlendCoeffRefsSrc : SkTBool<kSC_GrBlendCoeff == Coeff ||
                                       kISC_GrBlendCoeff == Coeff ||
index 8f2c69d..332d9d2 100644 (file)
@@ -8,6 +8,7 @@
 #ifndef GrXferProcessor_DEFINED
 #define GrXferProcessor_DEFINED
 
+#include "GrBlend.h"
 #include "GrColor.h"
 #include "GrProcessor.h"
 #include "GrTexture.h"
@@ -20,66 +21,6 @@ class GrGLXferProcessor;
 class GrProcOptInfo;
 
 /**
- * Equations for alpha-blending.
- */
-enum GrBlendEquation {
-    // Basic blend equations.
-    kAdd_GrBlendEquation,             //<! Cs*S + Cd*D
-    kSubtract_GrBlendEquation,        //<! Cs*S - Cd*D
-    kReverseSubtract_GrBlendEquation, //<! Cd*D - Cs*S
-
-    // Advanced blend equations. These are described in the SVG and PDF specs.
-    kScreen_GrBlendEquation,
-    kOverlay_GrBlendEquation,
-    kDarken_GrBlendEquation,
-    kLighten_GrBlendEquation,
-    kColorDodge_GrBlendEquation,
-    kColorBurn_GrBlendEquation,
-    kHardLight_GrBlendEquation,
-    kSoftLight_GrBlendEquation,
-    kDifference_GrBlendEquation,
-    kExclusion_GrBlendEquation,
-    kMultiply_GrBlendEquation,
-    kHSLHue_GrBlendEquation,
-    kHSLSaturation_GrBlendEquation,
-    kHSLColor_GrBlendEquation,
-    kHSLLuminosity_GrBlendEquation,
-
-    kFirstAdvancedGrBlendEquation = kScreen_GrBlendEquation,
-    kLast_GrBlendEquation = kHSLLuminosity_GrBlendEquation
-};
-
-static const int kGrBlendEquationCnt = kLast_GrBlendEquation + 1;
-
-/**
- * Coeffecients for alpha-blending.
- */
-enum GrBlendCoeff {
-    kZero_GrBlendCoeff,    //<! 0
-    kOne_GrBlendCoeff,     //<! 1
-    kSC_GrBlendCoeff,      //<! src color
-    kISC_GrBlendCoeff,     //<! one minus src color
-    kDC_GrBlendCoeff,      //<! dst color
-    kIDC_GrBlendCoeff,     //<! one minus dst color
-    kSA_GrBlendCoeff,      //<! src alpha
-    kISA_GrBlendCoeff,     //<! one minus src alpha
-    kDA_GrBlendCoeff,      //<! dst alpha
-    kIDA_GrBlendCoeff,     //<! one minus dst alpha
-    kConstC_GrBlendCoeff,  //<! constant color
-    kIConstC_GrBlendCoeff, //<! one minus constant color
-    kConstA_GrBlendCoeff,  //<! constant color alpha
-    kIConstA_GrBlendCoeff, //<! one minus constant color alpha
-    kS2C_GrBlendCoeff,
-    kIS2C_GrBlendCoeff,
-    kS2A_GrBlendCoeff,
-    kIS2A_GrBlendCoeff,
-
-    kLast_GrBlendCoeff = kIS2A_GrBlendCoeff
-};
-
-static const int kGrBlendCoeffCnt = kLast_GrBlendCoeff + 1;
-
-/**
  * Barriers for blending. When a shader reads the dst directly, an Xfer barrier is sometimes
  * required after a pixel has been written, before it can be safely read again.
  */