OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2006, 2007 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2006, 2007 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2005 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2005 Eric Seidel <eric@webkit.org> |
5 * Copyright (C) 2013 Google Inc. All rights reserved. | 5 * Copyright (C) 2013 Google Inc. All rights reserved. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 17 matching lines...) Expand all Loading... |
28 | 28 |
29 namespace blink { | 29 namespace blink { |
30 | 30 |
31 class PLATFORM_EXPORT FEBlend : public FilterEffect { | 31 class PLATFORM_EXPORT FEBlend : public FilterEffect { |
32 public: | 32 public: |
33 static PassRefPtr<FEBlend> create(Filter*, WebBlendMode); | 33 static PassRefPtr<FEBlend> create(Filter*, WebBlendMode); |
34 | 34 |
35 WebBlendMode blendMode() const; | 35 WebBlendMode blendMode() const; |
36 bool setBlendMode(WebBlendMode); | 36 bool setBlendMode(WebBlendMode); |
37 | 37 |
38 void platformApplyGeneric(unsigned char* srcPixelArrayA, unsigned char* srcP
ixelArrayB, unsigned char* dstPixelArray, | |
39 unsigned colorArrayLength); | |
40 void platformApplyNEON(unsigned char* srcPixelArrayA, unsigned char* srcPixe
lArrayB, unsigned char* dstPixelArray, | |
41 unsigned colorArrayLength); | |
42 virtual PassRefPtr<SkImageFilter> createImageFilter(SkiaImageFilterBuilder*)
OVERRIDE; | 38 virtual PassRefPtr<SkImageFilter> createImageFilter(SkiaImageFilterBuilder*)
OVERRIDE; |
43 | 39 |
44 virtual TextStream& externalRepresentation(TextStream&, int indention) const
OVERRIDE; | 40 virtual TextStream& externalRepresentation(TextStream&, int indention) const
OVERRIDE; |
45 | 41 |
46 private: | 42 private: |
47 FEBlend(Filter*, WebBlendMode); | 43 FEBlend(Filter*, WebBlendMode); |
48 | 44 |
49 virtual void applySoftware() OVERRIDE; | 45 virtual void applySoftware() OVERRIDE; |
50 bool applySoftwareNEON(); | 46 void applySoftwareInternal(); |
| 47 |
| 48 #if HAVE(ARM_NEON_INTRINSICS) |
| 49 void applySoftwareInternalNEON(); |
| 50 void platformApplyNEON(unsigned char* srcPixelArrayA, unsigned char* srcPixe
lArrayB, unsigned char* dstPixelArray, unsigned colorArrayLength); |
| 51 #endif |
51 | 52 |
52 WebBlendMode m_mode; | 53 WebBlendMode m_mode; |
53 }; | 54 }; |
54 | 55 |
55 } // namespace blink | 56 } // namespace blink |
56 | 57 |
57 #endif // FEBlend_h | 58 #endif // FEBlend_h |
OLD | NEW |