Index: src/gpu/glsl/GrGLSLFragmentShaderBuilder.cpp |
diff --git a/src/gpu/glsl/GrGLSLFragmentShaderBuilder.cpp b/src/gpu/glsl/GrGLSLFragmentShaderBuilder.cpp |
index 5d1ba511b74b5809f5a2e787b44a994b1a2eacb8..0ebd3188e37a5d7864d8c02c998f05d9c5cdd9f5 100644 |
--- a/src/gpu/glsl/GrGLSLFragmentShaderBuilder.cpp |
+++ b/src/gpu/glsl/GrGLSLFragmentShaderBuilder.cpp |
@@ -189,6 +189,20 @@ const char* GrGLSLFragmentShaderBuilder::fragmentPosition() { |
} |
} |
+bool GrGLSLFragmentShaderBuilder::hasDistanceVectorOutput() const { |
+ return !fDistanceVectorOutput.isEmpty(); |
+} |
+ |
+void GrGLSLFragmentShaderBuilder::enableDistanceVector(const SkString& name) { |
+ SkASSERT(!this->hasDistanceVectorOutput()); |
+ fDistanceVectorOutput = name; |
+} |
+ |
+const char* GrGLSLFragmentShaderBuilder::distanceVectorName() const { |
+ SkASSERT(this->hasDistanceVectorOutput()); |
+ return fDistanceVectorOutput.c_str(); |
+} |
+ |
void GrGLSLFragmentShaderBuilder::appendOffsetToSample(const char* sampleIdx, Coordinates coords) { |
SkASSERT(fProgramBuilder->header().fSamplePatternKey); |
SkDEBUGCODE(fUsedProcessorFeatures |= GrProcessor::kSampleLocations_RequiredFeature); |