Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(267)

Side by Side Diff: include/effects/SkBlurDrawLooper.h

Issue 253633003: add asAShadowBlur for android to drawlooper (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: add unittests (and fix bugs in layerdrawlooper) Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « include/core/SkMaskFilter.h ('k') | include/effects/SkEmbossMaskFilter.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2008 The Android Open Source Project 2 * Copyright 2008 The Android Open Source Project
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 8
9 #ifndef SkBlurDrawLooper_DEFINED 9 #ifndef SkBlurDrawLooper_DEFINED
10 #define SkBlurDrawLooper_DEFINED 10 #define SkBlurDrawLooper_DEFINED
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 SK_TO_STRING_OVERRIDE() 54 SK_TO_STRING_OVERRIDE()
55 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkBlurDrawLooper) 55 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkBlurDrawLooper)
56 56
57 protected: 57 protected:
58 SkBlurDrawLooper(SkColor color, SkScalar sigma, SkScalar dx, SkScalar dy, 58 SkBlurDrawLooper(SkColor color, SkScalar sigma, SkScalar dx, SkScalar dy,
59 uint32_t flags); 59 uint32_t flags);
60 60
61 SkBlurDrawLooper(SkReadBuffer&); 61 SkBlurDrawLooper(SkReadBuffer&);
62 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE; 62 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE;
63 63
64 virtual bool asABlurShadow(BlurShadowRec*) const SK_OVERRIDE;
65
64 private: 66 private:
65 SkMaskFilter* fBlur; 67 SkMaskFilter* fBlur;
66 SkColorFilter* fColorFilter; 68 SkColorFilter* fColorFilter;
67 SkScalar fDx, fDy; 69 SkScalar fDx, fDy, fSigma;
68 SkColor fBlurColor; 70 SkColor fBlurColor;
69 uint32_t fBlurFlags; 71 uint32_t fBlurFlags;
70 72
71 enum State { 73 enum State {
72 kBeforeEdge, 74 kBeforeEdge,
73 kAfterEdge, 75 kAfterEdge,
74 kDone 76 kDone
75 }; 77 };
76 78
77 class BlurDrawLooperContext : public SkDrawLooper::Context { 79 class BlurDrawLooperContext : public SkDrawLooper::Context {
78 public: 80 public:
79 explicit BlurDrawLooperContext(const SkBlurDrawLooper* looper); 81 explicit BlurDrawLooperContext(const SkBlurDrawLooper* looper);
80 82
81 virtual bool next(SkCanvas* canvas, SkPaint* paint) SK_OVERRIDE; 83 virtual bool next(SkCanvas* canvas, SkPaint* paint) SK_OVERRIDE;
82 84
83 private: 85 private:
84 const SkBlurDrawLooper* fLooper; 86 const SkBlurDrawLooper* fLooper;
85 State fState; 87 State fState;
86 }; 88 };
87 89
88 void init(SkScalar sigma, SkScalar dx, SkScalar dy, SkColor color, uint32_t flags); 90 void init(SkScalar sigma, SkScalar dx, SkScalar dy, SkColor color, uint32_t flags);
91 void initEffects();
89 92
90 typedef SkDrawLooper INHERITED; 93 typedef SkDrawLooper INHERITED;
91 }; 94 };
92 95
93 #endif 96 #endif
OLDNEW
« no previous file with comments | « include/core/SkMaskFilter.h ('k') | include/effects/SkEmbossMaskFilter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698