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

Side by Side Diff: src/ports/SkGlobalInitialization_chromium.cpp

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 | « src/opts/SkXfermode_opts_arm_neon.cpp ('k') | src/ports/SkGlobalInitialization_default.cpp » ('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 2011 Google Inc. 2 * Copyright 2011 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 "SkTypes.h" 8 #include "SkTypes.h"
9 9
10 #include "SkBitmapProcShader.h" 10 #include "SkBitmapProcShader.h"
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 #include "SkPictureImageFilter.h" 52 #include "SkPictureImageFilter.h"
53 #include "SkPictureShader.h" 53 #include "SkPictureShader.h"
54 #include "SkPixelXorXfermode.h" 54 #include "SkPixelXorXfermode.h"
55 #include "SkRectShaderImageFilter.h" 55 #include "SkRectShaderImageFilter.h"
56 #include "SkTableColorFilter.h" 56 #include "SkTableColorFilter.h"
57 #include "SkTestImageFilters.h" 57 #include "SkTestImageFilters.h"
58 #include "SkTileImageFilter.h" 58 #include "SkTileImageFilter.h"
59 #include "SkMatrixImageFilter.h" 59 #include "SkMatrixImageFilter.h"
60 #include "SkXfermodeImageFilter.h" 60 #include "SkXfermodeImageFilter.h"
61 61
62 static void InitializeFlattenables() { 62 class SkPrivateEffectInitializer {
63 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkAvoidXfermode) 63 public:
64 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapProcShader) 64 static void Init() {
65 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapSource) 65 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkAvoidXfermode)
66 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurDrawLooper) 66 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapProcShader)
67 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurImageFilter) 67 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapSource)
68 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorMatrixFilter) 68 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurDrawLooper)
69 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorShader) 69 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurImageFilter)
70 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposePathEffect) 70 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorMatrixFilter)
71 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeShader) 71 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorShader)
72 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkCornerPathEffect) 72 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposePathEffect)
73 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDashPathEffect) 73 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeShader)
74 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDilateImageFilter) 74 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkCornerPathEffect)
75 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDiscretePathEffect) 75 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDashPathEffect)
76 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDisplacementMapEffect) 76 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDilateImageFilter)
77 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDropShadowImageFilter) 77 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDiscretePathEffect)
78 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmbossMaskFilter) 78 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDisplacementMapEffect)
79 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmptyShader) 79 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDropShadowImageFilter)
80 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkErodeImageFilter) 80 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmbossMaskFilter)
81 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLayerDrawLooper) 81 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmptyShader)
82 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLayerRasterizer) 82 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkErodeImageFilter)
83 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLerpXfermode) 83 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLayerDrawLooper)
84 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLocalMatrixShader) 84 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLayerRasterizer)
85 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLumaColorFilter) 85 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLerpXfermode)
86 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPath1DPathEffect) 86 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLocalMatrixShader)
87 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLine2DPathEffect) 87 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLumaColorFilter)
88 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPath2DPathEffect) 88 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPath1DPathEffect)
89 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPerlinNoiseShader) 89 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLine2DPathEffect)
90 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureImageFilter) 90 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPath2DPathEffect)
91 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureShader) 91 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPerlinNoiseShader)
92 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPixelXorXfermode) 92 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureImageFilter)
93 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkRectShaderImageFilter) 93 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPictureShader)
94 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSumPathEffect) 94 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPixelXorXfermode)
95 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkTileImageFilter) 95 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkRectShaderImageFilter)
96 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixImageFilter) 96 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSumPathEffect)
97 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkXfermodeImageFilter) 97 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkTileImageFilter)
98 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMagnifierImageFilter) 98 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixImageFilter)
99 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixConvolutionImageFilter) 99 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkXfermodeImageFilter)
100 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMagnifierImageFilter)
101 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMatrixConvolutionImageFilter)
100 102
101 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkOffsetImageFilter) 103 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkOffsetImageFilter)
102 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeImageFilter) 104 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeImageFilter)
103 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMergeImageFilter) 105 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMergeImageFilter)
104 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorFilterImageFilter) 106 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorFilterImageFilter)
105 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDownSampleImageFilter) 107 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDownSampleImageFilter)
106 108
107 SkArithmeticMode::InitializeFlattenables(); 109 SkArithmeticMode::InitializeFlattenables();
108 SkBlurMaskFilter::InitializeFlattenables(); 110 SkBlurMaskFilter::InitializeFlattenables();
109 SkColorFilter::InitializeFlattenables(); 111 SkColorFilter::InitializeFlattenables();
110 SkGradientShader::InitializeFlattenables(); 112 SkGradientShader::InitializeFlattenables();
111 SkLightingImageFilter::InitializeFlattenables(); 113 SkLightingImageFilter::InitializeFlattenables();
112 SkTableColorFilter::InitializeFlattenables(); 114 SkTableColorFilter::InitializeFlattenables();
113 SkXfermode::InitializeFlattenables(); 115 SkXfermode::InitializeFlattenables();
114 } 116 }
117 };
115 118
116 void SkFlattenable::InitializeFlattenablesIfNeeded() { 119 void SkFlattenable::InitializeFlattenablesIfNeeded() {
117 SK_DECLARE_STATIC_ONCE(once); 120 SK_DECLARE_STATIC_ONCE(once);
118 SkOnce(&once, InitializeFlattenables); 121 SkOnce(&once, SkPrivateEffectInitializer::Init);
119 } 122 }
OLDNEW
« no previous file with comments | « src/opts/SkXfermode_opts_arm_neon.cpp ('k') | src/ports/SkGlobalInitialization_default.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698