OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 #include "SkBlurMaskFilter.h" | 9 #include "SkBlurMaskFilter.h" |
10 #include "SkBlurMask.h" | 10 #include "SkBlurMask.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 #include "GrDrawContext.h" | 23 #include "GrDrawContext.h" |
24 #include "GrTexture.h" | 24 #include "GrTexture.h" |
25 #include "GrFragmentProcessor.h" | 25 #include "GrFragmentProcessor.h" |
26 #include "GrInvariantOutput.h" | 26 #include "GrInvariantOutput.h" |
27 #include "SkGrPixelRef.h" | 27 #include "SkGrPixelRef.h" |
28 #include "SkDraw.h" | 28 #include "SkDraw.h" |
29 #include "effects/GrSimpleTextureEffect.h" | 29 #include "effects/GrSimpleTextureEffect.h" |
30 #include "gl/GrGLFragmentProcessor.h" | 30 #include "gl/GrGLFragmentProcessor.h" |
31 #include "gl/builders/GrGLProgramBuilder.h" | 31 #include "gl/builders/GrGLProgramBuilder.h" |
32 #include "glsl/GrGLSLProgramDataManager.h" | 32 #include "glsl/GrGLSLProgramDataManager.h" |
| 33 #include "glsl/GrGLSLTextureSampler.h" |
33 #endif | 34 #endif |
34 | 35 |
35 SkScalar SkBlurMaskFilter::ConvertRadiusToSigma(SkScalar radius) { | 36 SkScalar SkBlurMaskFilter::ConvertRadiusToSigma(SkScalar radius) { |
36 return SkBlurMask::ConvertRadiusToSigma(radius); | 37 return SkBlurMask::ConvertRadiusToSigma(radius); |
37 } | 38 } |
38 | 39 |
39 class SkBlurMaskFilterImpl : public SkMaskFilter { | 40 class SkBlurMaskFilterImpl : public SkMaskFilter { |
40 public: | 41 public: |
41 SkBlurMaskFilterImpl(SkScalar sigma, SkBlurStyle, uint32_t flags); | 42 SkBlurMaskFilterImpl(SkScalar sigma, SkBlurStyle, uint32_t flags); |
42 | 43 |
(...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
689 typedef GrGLSLProgramDataManager::UniformHandle UniformHandle; | 690 typedef GrGLSLProgramDataManager::UniformHandle UniformHandle; |
690 | 691 |
691 UniformHandle fProxyRectUniform; | 692 UniformHandle fProxyRectUniform; |
692 UniformHandle fProfileSizeUniform; | 693 UniformHandle fProfileSizeUniform; |
693 GrSLPrecision fPrecision; | 694 GrSLPrecision fPrecision; |
694 | 695 |
695 typedef GrGLFragmentProcessor INHERITED; | 696 typedef GrGLFragmentProcessor INHERITED; |
696 }; | 697 }; |
697 | 698 |
698 void OutputRectBlurProfileLookup(GrGLFragmentBuilder* fsBuilder, | 699 void OutputRectBlurProfileLookup(GrGLFragmentBuilder* fsBuilder, |
699 const GrGLShaderBuilder::TextureSampler& sample
r, | 700 const GrGLSLTextureSampler& sampler, |
700 const char *output, | 701 const char *output, |
701 const char *profileSize, const char *loc, | 702 const char *profileSize, const char *loc, |
702 const char *blurred_width, | 703 const char *blurred_width, |
703 const char *sharp_width) { | 704 const char *sharp_width) { |
704 fsBuilder->codeAppendf("float %s;", output); | 705 fsBuilder->codeAppendf("float %s;", output); |
705 fsBuilder->codeAppendf("{"); | 706 fsBuilder->codeAppendf("{"); |
706 fsBuilder->codeAppendf("float coord = ((abs(%s - 0.5 * %s) - 0.5 * %s)) / %s
;", | 707 fsBuilder->codeAppendf("float coord = ((abs(%s - 0.5 * %s) - 0.5 * %s)) / %s
;", |
707 loc, blurred_width, sharp_width, profileSize); | 708 loc, blurred_width, sharp_width, profileSize); |
708 fsBuilder->codeAppendf("%s = ", output); | 709 fsBuilder->codeAppendf("%s = ", output); |
709 fsBuilder->appendTextureLookup(sampler, "vec2(coord,0.5)"); | 710 fsBuilder->appendTextureLookup(sampler, "vec2(coord,0.5)"); |
(...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1299 } else { | 1300 } else { |
1300 str->append("None"); | 1301 str->append("None"); |
1301 } | 1302 } |
1302 str->append("))"); | 1303 str->append("))"); |
1303 } | 1304 } |
1304 #endif | 1305 #endif |
1305 | 1306 |
1306 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkBlurMaskFilter) | 1307 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkBlurMaskFilter) |
1307 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurMaskFilterImpl) | 1308 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurMaskFilterImpl) |
1308 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END | 1309 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END |
OLD | NEW |