X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fthird_party%2FWebKit%2FSource%2Fplatform%2Fgraphics%2Ffilters%2FFETurbulence.h;h=335306fe2a9a5a259ea93ef0a751d998f06cfb1a;hb=1afa4dd80ef85af7c90efaea6959db1d92330844;hp=677c7563804895001720929093725183f8064a3c;hpb=90762837333c13ccf56f2ad88e4481fc71e8d281;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/third_party/WebKit/Source/platform/graphics/filters/FETurbulence.h b/src/third_party/WebKit/Source/platform/graphics/filters/FETurbulence.h index 677c756..335306f 100644 --- a/src/third_party/WebKit/Source/platform/graphics/filters/FETurbulence.h +++ b/src/third_party/WebKit/Source/platform/graphics/filters/FETurbulence.h @@ -25,9 +25,10 @@ #ifndef FETurbulence_h #define FETurbulence_h -#include "platform/graphics/filters/Filter.h" #include "platform/graphics/filters/FilterEffect.h" +class SkShader; + namespace blink { enum TurbulenceType { @@ -60,70 +61,14 @@ public: static void fillRegionWorker(void*); - virtual TextStream& externalRepresentation(TextStream&, int indention) const OVERRIDE; + virtual TextStream& externalRepresentation(TextStream&, int indention) const override; private: - static const int s_blockSize = 256; - static const int s_blockMask = s_blockSize - 1; - - static const int s_minimalRectDimension = (100 * 100); // Empirical data limit for parallel jobs. - - struct PaintingData { - PaintingData(long paintingSeed, const IntSize& paintingSize) - : seed(paintingSeed) - , filterSize(paintingSize) - { - } - - long seed; - int latticeSelector[2 * s_blockSize + 2]; - float gradient[4][2 * s_blockSize + 2][2]; - IntSize filterSize; - - inline long random(); - }; - - struct StitchData { - StitchData() - : width(0) - , wrapX(0) - , height(0) - , wrapY(0) - { - } - - int width; // How much to subtract to wrap for stitching. - int wrapX; // Minimum value to wrap. - int height; - int wrapY; - }; - - template - friend class ParallelJobs; - - struct FillRegionParameters { - FETurbulence* filter; - Uint8ClampedArray* pixelArray; - PaintingData* paintingData; - int startY; - int endY; - float baseFrequencyX; - float baseFrequencyY; - }; - - static void fillRegionWorker(FillRegionParameters*); - FETurbulence(Filter*, TurbulenceType, float, float, int, float, bool); - virtual void applySoftware() OVERRIDE; - virtual PassRefPtr createImageFilter(SkiaImageFilterBuilder*) OVERRIDE; + virtual PassRefPtr createImageFilter(SkiaImageFilterBuilder*) override; SkShader* createShader(); - inline void initPaint(PaintingData&); - float noise2D(int channel, PaintingData&, StitchData&, const FloatPoint&); - unsigned char calculateTurbulenceValueForPoint(int channel, PaintingData&, StitchData&, const FloatPoint&, float, float); - inline void fillRegion(Uint8ClampedArray*, PaintingData&, int, int, float, float); - TurbulenceType m_type; float m_baseFrequencyX; float m_baseFrequencyY;