SkGlobalInitialization_default.cpp revision 35c5ff0be81f2bbba9a7f31b055124a51e6168f4
1d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com/*
2d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com * Copyright 2011 Google Inc.
3d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com *
4d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com * Use of this source code is governed by a BSD-style license that can be
5d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com * found in the LICENSE file.
6d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com */
7d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com
8d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkTypes.h"
9d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com
10d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#if !SK_ALLOW_STATIC_GLOBAL_INITIALIZERS
11d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com
12d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkBitmapProcShader.h"
13d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkFlipPixelRef.h"
14d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkImageRef_ashmem.h"
15d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkImageRef_GlobalPool.h"
16d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkMallocPixelRef.h"
17d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkPathEffect.h"
18d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkPixelRef.h"
19d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#include "SkXfermode.h"
20d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com
21a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "Sk1DPathEffect.h"
22a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "Sk2DPathEffect.h"
23a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkAvoidXfermode.h"
2435c5ff0be81f2bbba9a7f31b055124a51e6168f4senorblanco@chromium.org#include "SkBlendImageFilter.h"
25a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkBlurDrawLooper.h"
26a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkBlurImageFilter.h"
27a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkBlurMaskFilter.h"
28a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkColorFilter.h"
29392e14eaaf952565e25e11b8e5133507e4e7d0d8senorblanco@chromium.org#include "SkColorFilterImageFilter.h"
30a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkColorMatrixFilter.h"
31a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkColorShader.h"
32b3c0f4886e22b6d2041c1049a1f295943959fff1scroggo#include "SkColorTable.h"
33b3c0f4886e22b6d2041c1049a1f295943959fff1scroggo#include "SkComposeShader.h"
34a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkCornerPathEffect.h"
35a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkDashPathEffect.h"
36a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkDiscretePathEffect.h"
37a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkEmptyShader.h"
3872ae6bd24eb72be13d5745129c16058e4d54e2f4scroggo@google.com#include "SkEmbossMaskFilter.h"
39a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkFlattenable.h"
40a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkGradientShader.h"
41a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkLayerDrawLooper.h"
42a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkLayerRasterizer.h"
430833777df1f05adafd9b70c666a72d80defa4f6bdjsollen@google.com#include "SkLightingImageFilter.h"
4435c5ff0be81f2bbba9a7f31b055124a51e6168f4senorblanco@chromium.org#include "SkMagnifierImageFilter.h"
45a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkMorphologyImageFilter.h"
46a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkPathEffect.h"
47a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkPixelXorXfermode.h"
48088719ecdc89b399dd3a3a65f8cced262e50d951robertphillips@google.com#include "SkStippleMaskFilter.h"
49a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkTableColorFilter.h"
50a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com#include "SkTestImageFilters.h"
51a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com
52d26147adbbdca85f07dff432025afee0c8614387caryclark@google.comvoid SkFlattenable::InitializeFlattenables() {
53a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com
54a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkAvoidXfermode)
55a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBitmapProcShader)
56b2ee33c535720d066dd0d51f38686517efa34f2asenorblanco@chromium.org    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlendImageFilter)
57a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurDrawLooper)
58a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurImageFilter)
59a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorMatrixFilter)
60a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorShader)
61b3c0f4886e22b6d2041c1049a1f295943959fff1scroggo    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorTable)
62a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposePathEffect)
63b3c0f4886e22b6d2041c1049a1f295943959fff1scroggo    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeShader)
64a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkCornerPathEffect)
65a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDashPathEffect)
66a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDilateImageFilter)
67a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDiscretePathEffect)
6872ae6bd24eb72be13d5745129c16058e4d54e2f4scroggo@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmbossMaskFilter)
69a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkEmptyShader)
70a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkErodeImageFilter)
71a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLayerDrawLooper)
72a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkLayerRasterizer)
73a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPath1DPathEffect)
74a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPath2DPathEffect)
75a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkPixelXorXfermode)
76941ee9303b62163ae08bbdcd7ad514e1a6389bdarobertphillips@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkStippleMaskFilter)
77a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSumPathEffect)
7882aa7482cbf55ce6d42c692550cadee5e23146e4bsalomon@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMagnifierImageFilter)
79a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com
80a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkOffsetImageFilter)
81a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkComposeImageFilter)
82a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMergeImageFilter)
83a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkColorFilterImageFilter)
84a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDownSampleImageFilter)
85a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com
865370cd969d8f3957e4306068e6195ac1bca3d6cddjsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkFlipPixelRef)
875370cd969d8f3957e4306068e6195ac1bca3d6cddjsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkImageRef_GlobalPool)
885370cd969d8f3957e4306068e6195ac1bca3d6cddjsollen@google.com    SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkMallocPixelRef)
895370cd969d8f3957e4306068e6195ac1bca3d6cddjsollen@google.com
90a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SkBlurMaskFilter::InitializeFlattenables();
91a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SkColorFilter::InitializeFlattenables();
92a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SkGradientShader::InitializeFlattenables();
930833777df1f05adafd9b70c666a72d80defa4f6bdjsollen@google.com    SkLightingImageFilter::InitializeFlattenables();
94a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SkTableColorFilter::InitializeFlattenables();
95a2ca41e3afdd8fad5e0e924dec029f33918e0a67djsollen@google.com    SkXfermode::InitializeFlattenables();
96d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com}
97d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com
98d26147adbbdca85f07dff432025afee0c8614387caryclark@google.com#endif
99