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 504 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
515 } | 515 } |
516 | 516 |
517 void SkBlurMaskFilterImpl::computeFastBounds(const SkRect& src, | 517 void SkBlurMaskFilterImpl::computeFastBounds(const SkRect& src, |
518 SkRect* dst) const { | 518 SkRect* dst) const { |
519 SkScalar pad = 3.0f * fSigma; | 519 SkScalar pad = 3.0f * fSigma; |
520 | 520 |
521 dst->set(src.fLeft - pad, src.fTop - pad, | 521 dst->set(src.fLeft - pad, src.fTop - pad, |
522 src.fRight + pad, src.fBottom + pad); | 522 src.fRight + pad, src.fBottom + pad); |
523 } | 523 } |
524 | 524 |
525 SkBlurMaskFilterImpl::SkBlurMaskFilterImpl(SkReadBuffer& buffer) | 525 #ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING |
526 : SkMaskFilter(buffer) { | 526 SkBlurMaskFilterImpl::SkBlurMaskFilterImpl(SkReadBuffer& buffer) : SkMaskFilter(
buffer) { |
527 fSigma = buffer.readScalar(); | 527 fSigma = buffer.readScalar(); |
528 fBlurStyle = (SkBlurStyle)buffer.readInt(); | 528 fBlurStyle = (SkBlurStyle)buffer.readInt(); |
529 fBlurFlags = buffer.readUInt() & SkBlurMaskFilter::kAll_BlurFlag; | 529 fBlurFlags = buffer.readUInt() & SkBlurMaskFilter::kAll_BlurFlag; |
530 SkASSERT(fSigma > 0); | 530 SkASSERT(fSigma > 0); |
531 SkASSERT((unsigned)fBlurStyle <= kLastEnum_SkBlurStyle); | 531 SkASSERT((unsigned)fBlurStyle <= kLastEnum_SkBlurStyle); |
532 } | 532 } |
| 533 #endif |
| 534 |
| 535 SkFlattenable* SkBlurMaskFilterImpl::CreateProc(SkReadBuffer& buffer) { |
| 536 const SkScalar sigma = buffer.readScalar(); |
| 537 const unsigned style = buffer.readUInt(); |
| 538 const unsigned flags = buffer.readUInt(); |
| 539 if (style <= kLastEnum_SkBlurStyle) { |
| 540 return SkBlurMaskFilter::Create((SkBlurStyle)style, sigma, flags); |
| 541 } |
| 542 return NULL; |
| 543 } |
533 | 544 |
534 void SkBlurMaskFilterImpl::flatten(SkWriteBuffer& buffer) const { | 545 void SkBlurMaskFilterImpl::flatten(SkWriteBuffer& buffer) const { |
535 this->INHERITED::flatten(buffer); | |
536 buffer.writeScalar(fSigma); | 546 buffer.writeScalar(fSigma); |
537 buffer.writeInt(fBlurStyle); | 547 buffer.writeUInt(fBlurStyle); |
538 buffer.writeUInt(fBlurFlags); | 548 buffer.writeUInt(fBlurFlags); |
539 } | 549 } |
540 | 550 |
541 #if SK_SUPPORT_GPU | 551 #if SK_SUPPORT_GPU |
542 | 552 |
543 class GrGLRectBlurEffect; | 553 class GrGLRectBlurEffect; |
544 | 554 |
545 class GrRectBlurEffect : public GrEffect { | 555 class GrRectBlurEffect : public GrEffect { |
546 public: | 556 public: |
547 virtual ~GrRectBlurEffect(); | 557 virtual ~GrRectBlurEffect(); |
(...skipping 656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1204 } else { | 1214 } else { |
1205 str->append("None"); | 1215 str->append("None"); |
1206 } | 1216 } |
1207 str->append("))"); | 1217 str->append("))"); |
1208 } | 1218 } |
1209 #endif | 1219 #endif |
1210 | 1220 |
1211 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkBlurMaskFilter) | 1221 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkBlurMaskFilter) |
1212 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurMaskFilterImpl) | 1222 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurMaskFilterImpl) |
1213 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END | 1223 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END |
OLD | NEW |