OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2016 Google Inc. | 2 * Copyright 2016 Google Inc. |
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 #include "SkBitmapProcShader.h" | 8 #include "SkBitmapProcShader.h" |
9 #include "SkColorFilter.h" | 9 #include "SkColorFilter.h" |
10 #include "SkColorFilterShader.h" | 10 #include "SkColorFilterShader.h" |
(...skipping 11 matching lines...) Expand all Loading... |
22 #include "SkXfermode.h" | 22 #include "SkXfermode.h" |
23 | 23 |
24 /* | 24 /* |
25 * Registers all of the required effects subclasses for picture deserialization
. | 25 * Registers all of the required effects subclasses for picture deserialization
. |
26 * | 26 * |
27 * Optional subclasses (e.g. Blur) should be registered in the ports/ version o
f this file, | 27 * Optional subclasses (e.g. Blur) should be registered in the ports/ version o
f this file, |
28 * inside the InitEffects() method. | 28 * inside the InitEffects() method. |
29 */ | 29 */ |
30 void SkFlattenable::PrivateInitializer::InitCore() { | 30 void SkFlattenable::PrivateInitializer::InitCore() { |
31 // Shader | 31 // Shader |
32 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapProcShader) | |
33 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorFilterShader) | 32 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorFilterShader) |
34 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorShader) | 33 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorShader) |
35 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColor4Shader) | 34 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColor4Shader) |
36 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeShader) | 35 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeShader) |
37 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmptyShader) | 36 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmptyShader) |
38 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkImageShader) | |
39 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLocalMatrixShader) | 37 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLocalMatrixShader) |
40 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureShader) | 38 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureShader) |
41 | 39 |
42 // PathEffect | 40 // PathEffect |
43 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposePathEffect) | 41 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposePathEffect) |
44 | 42 |
45 // ImageFilter | 43 // ImageFilter |
46 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixImageFilter) | 44 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixImageFilter) |
47 | 45 |
48 // ColorFilter | 46 // ColorFilter |
49 SkColorFilter::InitializeFlattenables(); | 47 SkColorFilter::InitializeFlattenables(); |
50 | 48 |
| 49 SkShader::InitializeFlattenables(); |
| 50 |
51 // Xfermode | 51 // Xfermode |
52 SkXfermode::InitializeFlattenables(); | 52 SkXfermode::InitializeFlattenables(); |
53 | 53 |
54 // Drawable | 54 // Drawable |
55 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkRecordedDrawable) | 55 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkRecordedDrawable) |
56 | 56 |
57 // Now initialize any optional/additional effects (implemented in src/ports) | 57 // Now initialize any optional/additional effects (implemented in src/ports) |
58 InitEffects(); | 58 InitEffects(); |
59 }; | 59 }; |
60 | 60 |
61 void SkFlattenable::InitializeFlattenablesIfNeeded() { | 61 void SkFlattenable::InitializeFlattenablesIfNeeded() { |
62 static SkOnce once; | 62 static SkOnce once; |
63 once(SkFlattenable::PrivateInitializer::InitCore); | 63 once(SkFlattenable::PrivateInitializer::InitCore); |
64 } | 64 } |
OLD | NEW |