OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2012 Google Inc. | 3 * Copyright 2012 Google Inc. |
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 "SkRadialGradient.h" | 9 #include "SkRadialGradient.h" |
10 #include "SkRadialGradient_Table.h" | 10 #include "SkRadialGradient_Table.h" |
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
153 : SkGradientShaderBase(desc, rad_to_unit_matrix(center, radius)) | 153 : SkGradientShaderBase(desc, rad_to_unit_matrix(center, radius)) |
154 , fCenter(center) | 154 , fCenter(center) |
155 , fRadius(radius) { | 155 , fRadius(radius) { |
156 } | 156 } |
157 | 157 |
158 size_t SkRadialGradient::contextSize() const { | 158 size_t SkRadialGradient::contextSize() const { |
159 return sizeof(RadialGradientContext); | 159 return sizeof(RadialGradientContext); |
160 } | 160 } |
161 | 161 |
162 SkShader::Context* SkRadialGradient::onCreateContext(const ContextRec& rec, void
* storage) const { | 162 SkShader::Context* SkRadialGradient::onCreateContext(const ContextRec& rec, void
* storage) const { |
163 return SkNEW_PLACEMENT_ARGS(storage, RadialGradientContext, (*this, rec)); | 163 return new (storage) RadialGradientContext(*this, rec); |
164 } | 164 } |
165 | 165 |
166 SkRadialGradient::RadialGradientContext::RadialGradientContext( | 166 SkRadialGradient::RadialGradientContext::RadialGradientContext( |
167 const SkRadialGradient& shader, const ContextRec& rec) | 167 const SkRadialGradient& shader, const ContextRec& rec) |
168 : INHERITED(shader, rec) {} | 168 : INHERITED(shader, rec) {} |
169 | 169 |
170 void SkRadialGradient::RadialGradientContext::shadeSpan16(int x, int y, uint16_t
* dstCParam, | 170 void SkRadialGradient::RadialGradientContext::shadeSpan16(int x, int y, uint16_t
* dstCParam, |
171 int count) { | 171 int count) { |
172 SkASSERT(count > 0); | 172 SkASSERT(count > 0); |
173 | 173 |
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
437 | 437 |
438 ///////////////////////////////////////////////////////////////////// | 438 ///////////////////////////////////////////////////////////////////// |
439 | 439 |
440 class GrRadialGradient : public GrGradientEffect { | 440 class GrRadialGradient : public GrGradientEffect { |
441 public: | 441 public: |
442 static GrFragmentProcessor* Create(GrContext* ctx, | 442 static GrFragmentProcessor* Create(GrContext* ctx, |
443 GrProcessorDataManager* procDataManager, | 443 GrProcessorDataManager* procDataManager, |
444 const SkRadialGradient& shader, | 444 const SkRadialGradient& shader, |
445 const SkMatrix& matrix, | 445 const SkMatrix& matrix, |
446 SkShader::TileMode tm) { | 446 SkShader::TileMode tm) { |
447 return SkNEW_ARGS(GrRadialGradient, (ctx, procDataManager, shader, matri
x, tm)); | 447 return new GrRadialGradient(ctx, procDataManager, shader, matrix, tm); |
448 } | 448 } |
449 | 449 |
450 virtual ~GrRadialGradient() { } | 450 virtual ~GrRadialGradient() { } |
451 | 451 |
452 const char* name() const override { return "Radial Gradient"; } | 452 const char* name() const override { return "Radial Gradient"; } |
453 | 453 |
454 private: | 454 private: |
455 GrRadialGradient(GrContext* ctx, | 455 GrRadialGradient(GrContext* ctx, |
456 GrProcessorDataManager* procDataManager, | 456 GrProcessorDataManager* procDataManager, |
457 const SkRadialGradient& shader, | 457 const SkRadialGradient& shader, |
458 const SkMatrix& matrix, | 458 const SkMatrix& matrix, |
459 SkShader::TileMode tm) | 459 SkShader::TileMode tm) |
460 : INHERITED(ctx, procDataManager, shader, matrix, tm) { | 460 : INHERITED(ctx, procDataManager, shader, matrix, tm) { |
461 this->initClassID<GrRadialGradient>(); | 461 this->initClassID<GrRadialGradient>(); |
462 } | 462 } |
463 | 463 |
464 GrGLFragmentProcessor* onCreateGLInstance() const override { | 464 GrGLFragmentProcessor* onCreateGLInstance() const override { |
465 return SkNEW_ARGS(GrGLRadialGradient, (*this)); | 465 return new GrGLRadialGradient(*this); |
466 } | 466 } |
467 | 467 |
468 virtual void onGetGLProcessorKey(const GrGLSLCaps& caps, | 468 virtual void onGetGLProcessorKey(const GrGLSLCaps& caps, |
469 GrProcessorKeyBuilder* b) const override { | 469 GrProcessorKeyBuilder* b) const override { |
470 GrGLRadialGradient::GenKey(*this, caps, b); | 470 GrGLRadialGradient::GenKey(*this, caps, b); |
471 } | 471 } |
472 | 472 |
473 GR_DECLARE_FRAGMENT_PROCESSOR_TEST; | 473 GR_DECLARE_FRAGMENT_PROCESSOR_TEST; |
474 | 474 |
475 typedef GrGradientEffect INHERITED; | 475 typedef GrGradientEffect INHERITED; |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
561 str->appendScalar(fCenter.fY); | 561 str->appendScalar(fCenter.fY); |
562 str->append(") radius: "); | 562 str->append(") radius: "); |
563 str->appendScalar(fRadius); | 563 str->appendScalar(fRadius); |
564 str->append(" "); | 564 str->append(" "); |
565 | 565 |
566 this->INHERITED::toString(str); | 566 this->INHERITED::toString(str); |
567 | 567 |
568 str->append(")"); | 568 str->append(")"); |
569 } | 569 } |
570 #endif | 570 #endif |
OLD | NEW |