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

Side by Side Diff: include/core/SkXfermode.h

Issue 395603002: Simplify flattening to just write enough to call the factory (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: rebase Created 6 years, 4 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
« no previous file with comments | « include/core/SkShader.h ('k') | include/effects/Sk1DPathEffect.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 /* 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 9
10 #ifndef SkXfermode_DEFINED 10 #ifndef SkXfermode_DEFINED
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 Coeff* src, 210 Coeff* src,
211 Coeff* dst, 211 Coeff* dst,
212 GrTexture* background = NULL); 212 GrTexture* background = NULL);
213 213
214 SK_TO_STRING_PUREVIRT() 214 SK_TO_STRING_PUREVIRT()
215 SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP() 215 SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP()
216 SK_DEFINE_FLATTENABLE_TYPE(SkXfermode) 216 SK_DEFINE_FLATTENABLE_TYPE(SkXfermode)
217 217
218 protected: 218 protected:
219 SkXfermode() {} 219 SkXfermode() {}
220 #ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING
220 explicit SkXfermode(SkReadBuffer& rb) : SkFlattenable(rb) {} 221 explicit SkXfermode(SkReadBuffer& rb) : SkFlattenable(rb) {}
222 #endif
221 223
222 /** The default implementation of xfer32/xfer16/xferA8 in turn call this 224 /** The default implementation of xfer32/xfer16/xferA8 in turn call this
223 method, 1 color at a time (upscaled to a SkPMColor). The default 225 method, 1 color at a time (upscaled to a SkPMColor). The default
224 implmentation of this method just returns dst. If performance is 226 implmentation of this method just returns dst. If performance is
225 important, your subclass should override xfer32/xfer16/xferA8 directly. 227 important, your subclass should override xfer32/xfer16/xferA8 directly.
226 228
227 This method will not be called directly by the client, so it need not 229 This method will not be called directly by the client, so it need not
228 be implemented if your subclass has overridden xfer32/xfer16/xferA8 230 be implemented if your subclass has overridden xfer32/xfer16/xferA8
229 */ 231 */
230 virtual SkPMColor xferColor(SkPMColor src, SkPMColor dst) const; 232 virtual SkPMColor xferColor(SkPMColor src, SkPMColor dst) const;
231 233
232 private: 234 private:
233 enum { 235 enum {
234 kModeCount = kLastMode + 1 236 kModeCount = kLastMode + 1
235 }; 237 };
236 238
237 typedef SkFlattenable INHERITED; 239 typedef SkFlattenable INHERITED;
238 }; 240 };
239 241
240 #endif 242 #endif
OLDNEW
« no previous file with comments | « include/core/SkShader.h ('k') | include/effects/Sk1DPathEffect.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698