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 | 9 |
10 #ifndef SkXfermode_DEFINED | 10 #ifndef SkXfermode_DEFINED |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 | 227 |
228 /** A subclass must implement this factory function to work with the GPU bac
kend. | 228 /** A subclass must implement this factory function to work with the GPU bac
kend. |
229 The xfermode will return a factory for which the caller will get a ref.
It is up | 229 The xfermode will return a factory for which the caller will get a ref.
It is up |
230 to the caller to install it. XferProcessors cannot use a background text
ure. | 230 to the caller to install it. XferProcessors cannot use a background text
ure. |
231 */ | 231 */ |
232 virtual GrXPFactory* asXPFactory() const; | 232 virtual GrXPFactory* asXPFactory() const; |
233 #endif | 233 #endif |
234 | 234 |
235 SK_TO_STRING_PUREVIRT() | 235 SK_TO_STRING_PUREVIRT() |
236 SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP() | 236 SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP() |
| 237 SK_DEFINE_FLATTENABLE_TYPE(SkXfermode) |
237 | 238 |
238 enum D32Flags { | 239 enum D32Flags { |
239 kSrcIsOpaque_D32Flag = 1 << 0, | 240 kSrcIsOpaque_D32Flag = 1 << 0, |
240 kSrcIsSingle_D32Flag = 1 << 1, | 241 kSrcIsSingle_D32Flag = 1 << 1, |
241 kDstIsSRGB_D32Flag = 1 << 2, | 242 kDstIsSRGB_D32Flag = 1 << 2, |
242 }; | 243 }; |
243 typedef void (*D32Proc)(const SkXfermode*, uint32_t dst[], const SkPM4f src[
], | 244 typedef void (*D32Proc)(const SkXfermode*, uint32_t dst[], const SkPM4f src[
], |
244 int count, const SkAlpha coverage[]); | 245 int count, const SkAlpha coverage[]); |
245 static D32Proc GetD32Proc(SkXfermode*, uint32_t flags); | 246 static D32Proc GetD32Proc(SkXfermode*, uint32_t flags); |
246 static D32Proc GetD32Proc(const sk_sp<SkXfermode>& xfer, uint32_t flags) { | 247 static D32Proc GetD32Proc(const sk_sp<SkXfermode>& xfer, uint32_t flags) { |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 | 287 |
287 private: | 288 private: |
288 enum { | 289 enum { |
289 kModeCount = kLastMode + 1 | 290 kModeCount = kLastMode + 1 |
290 }; | 291 }; |
291 | 292 |
292 typedef SkFlattenable INHERITED; | 293 typedef SkFlattenable INHERITED; |
293 }; | 294 }; |
294 | 295 |
295 #endif | 296 #endif |
OLD | NEW |