123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- /*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
- #include "include/core/SkFlattenable.h"
- #if defined(SK_DISABLE_EFFECT_DESERIALIZATION)
- void SkFlattenable::PrivateInitializer::InitEffects() {}
- void SkFlattenable::PrivateInitializer::InitImageFilters() {}
- #else
- #include "include/core/SkColorFilter.h"
- #include "include/core/SkPathEffect.h"
- #include "include/effects/Sk1DPathEffect.h"
- #include "include/effects/Sk2DPathEffect.h"
- #include "include/effects/SkCornerPathEffect.h"
- #include "include/effects/SkDiscretePathEffect.h"
- #include "include/effects/SkGradientShader.h"
- #include "include/effects/SkHighContrastFilter.h"
- #include "include/effects/SkLayerDrawLooper.h"
- #include "include/effects/SkLumaColorFilter.h"
- #include "include/effects/SkOverdrawColorFilter.h"
- #include "include/effects/SkPerlinNoiseShader.h"
- #include "include/effects/SkShaderMaskFilter.h"
- #include "include/effects/SkTableColorFilter.h"
- #include "src/core/SkColorFilter_Matrix.h"
- #include "src/core/SkNormalSource.h"
- #include "src/core/SkRecordedDrawable.h"
- #include "src/effects/SkDashImpl.h"
- #include "src/effects/SkEmbossMaskFilter.h"
- #include "src/effects/SkOpPE.h"
- #include "src/effects/SkTrimPE.h"
- #include "src/shaders/SkBitmapProcShader.h"
- #include "src/shaders/SkColorFilterShader.h"
- #include "src/shaders/SkColorShader.h"
- #include "src/shaders/SkComposeShader.h"
- #include "src/shaders/SkEmptyShader.h"
- #include "src/shaders/SkImageShader.h"
- #include "src/shaders/SkLightingShader.h"
- #include "src/shaders/SkLocalMatrixShader.h"
- #include "src/shaders/SkPictureShader.h"
- #include "src/shaders/SkRTShader.h"
- #include "src/shaders/SkShaderBase.h"
- #include "include/effects/SkAlphaThresholdFilter.h"
- #include "include/effects/SkBlurImageFilter.h"
- #include "include/effects/SkColorFilterImageFilter.h"
- #include "include/effects/SkComposeImageFilter.h"
- #include "include/effects/SkDisplacementMapEffect.h"
- #include "include/effects/SkDropShadowImageFilter.h"
- #include "include/effects/SkImageSource.h"
- #include "include/effects/SkLightingImageFilter.h"
- #include "include/effects/SkMagnifierImageFilter.h"
- #include "include/effects/SkMatrixConvolutionImageFilter.h"
- #include "include/effects/SkMergeImageFilter.h"
- #include "include/effects/SkMorphologyImageFilter.h"
- #include "include/effects/SkOffsetImageFilter.h"
- #include "include/effects/SkPaintImageFilter.h"
- #include "include/effects/SkPictureImageFilter.h"
- #include "include/effects/SkTileImageFilter.h"
- #include "include/effects/SkXfermodeImageFilter.h"
- #include "src/core/SkLocalMatrixImageFilter.h"
- #include "src/core/SkMatrixImageFilter.h"
- /*
- * Register most effects for deserialization.
- *
- * None of these are strictly required for Skia to operate, so if you're
- * not using deserialization yourself, you can define
- * SK_DISABLE_EFFECT_SERIALIZATION, or modify/replace this file as needed.
- */
- void SkFlattenable::PrivateInitializer::InitEffects() {
- // Shaders.
- SK_REGISTER_FLATTENABLE(SkColor4Shader);
- SK_REGISTER_FLATTENABLE(SkColorFilterShader);
- SK_REGISTER_FLATTENABLE(SkColorShader);
- SK_REGISTER_FLATTENABLE(SkShader_Blend);
- SK_REGISTER_FLATTENABLE(SkShader_Lerp);
- SK_REGISTER_FLATTENABLE(SkShader_LerpRed);
- SK_REGISTER_FLATTENABLE(SkEmptyShader);
- SK_REGISTER_FLATTENABLE(SkLocalMatrixShader);
- SK_REGISTER_FLATTENABLE(SkPictureShader);
- SK_REGISTER_FLATTENABLE(SkRTShader);
- SkGradientShader::RegisterFlattenables();
- SkLightingShader::RegisterFlattenables();
- SkPerlinNoiseShader::RegisterFlattenables();
- SkShaderBase::RegisterFlattenables();
- // Color filters.
- SkColorFilter_Matrix::RegisterFlattenables();
- SK_REGISTER_FLATTENABLE(SkLumaColorFilter);
- SkColorFilter::RegisterFlattenables();
- SkHighContrastFilter::RegisterFlattenables();
- SkOverdrawColorFilter::RegisterFlattenables();
- SkTableColorFilter::RegisterFlattenables();
- // Mask filters.
- SK_REGISTER_FLATTENABLE(SkEmbossMaskFilter);
- SkMaskFilter::RegisterFlattenables();
- SkShaderMaskFilter::RegisterFlattenables();
- // Path effects.
- SK_REGISTER_FLATTENABLE(SkCornerPathEffect);
- SK_REGISTER_FLATTENABLE(SkDashImpl);
- SK_REGISTER_FLATTENABLE(SkDiscretePathEffect);
- SK_REGISTER_FLATTENABLE(SkLine2DPathEffect);
- SK_REGISTER_FLATTENABLE(SkMatrixPE);
- SK_REGISTER_FLATTENABLE(SkOpPE);
- SK_REGISTER_FLATTENABLE(SkPath1DPathEffect);
- SK_REGISTER_FLATTENABLE(SkPath2DPathEffect);
- SK_REGISTER_FLATTENABLE(SkStrokePE);
- SK_REGISTER_FLATTENABLE(SkTrimPE);
- SkPathEffect::RegisterFlattenables();
- // Misc.
- SK_REGISTER_FLATTENABLE(SkLayerDrawLooper);
- SK_REGISTER_FLATTENABLE(SkRecordedDrawable);
- SkNormalSource::RegisterFlattenables();
- }
- /*
- * Register SkImageFilters for deserialization.
- *
- * None of these are strictly required for Skia to operate, so if you're
- * not using deserialization yourself, you can define
- * SK_DISABLE_EFFECT_SERIALIZATION, or modify/replace this file as needed.
- */
- void SkFlattenable::PrivateInitializer::InitImageFilters() {
- SkAlphaThresholdFilter::RegisterFlattenables();
- SkImageFilter::RegisterFlattenables();
- SkArithmeticImageFilter::RegisterFlattenables();
- SkXfermodeImageFilter::RegisterFlattenables();
- SK_REGISTER_FLATTENABLE(SkDilateImageFilter);
- SK_REGISTER_FLATTENABLE(SkDisplacementMapEffect);
- SK_REGISTER_FLATTENABLE(SkDropShadowImageFilter);
- SK_REGISTER_FLATTENABLE(SkErodeImageFilter);
- SK_REGISTER_FLATTENABLE(SkImageSource);
- SK_REGISTER_FLATTENABLE(SkLocalMatrixImageFilter);
- SK_REGISTER_FLATTENABLE(SkPaintImageFilter);
- SK_REGISTER_FLATTENABLE(SkPictureImageFilter);
- SK_REGISTER_FLATTENABLE(SkTileImageFilter);
- SK_REGISTER_FLATTENABLE(SkMagnifierImageFilter);
- SK_REGISTER_FLATTENABLE(SkMatrixConvolutionImageFilter);
- SK_REGISTER_FLATTENABLE(SkMatrixImageFilter);
- SK_REGISTER_FLATTENABLE(SkOffsetImageFilter);
- SK_REGISTER_FLATTENABLE(SkComposeImageFilter);
- SK_REGISTER_FLATTENABLE(SkMergeImageFilter);
- SK_REGISTER_FLATTENABLE(SkColorFilterImageFilter);
- SkLightingImageFilter::RegisterFlattenables();
- }
- #endif
|