OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2014 Google Inc. | 2 * Copyright 2014 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 #ifndef SkXfermode_opts_SSE2_DEFINED | 8 #ifndef SkXfermode_opts_SSE2_DEFINED |
9 #define SkXfermode_opts_SSE2_DEFINED | 9 #define SkXfermode_opts_SSE2_DEFINED |
10 | 10 |
11 #include "SkTypes.h" | 11 #include "SkTypes.h" |
12 #include "SkXfermode_proccoeff.h" | 12 #include "SkXfermode_proccoeff.h" |
13 | 13 |
14 class SK_API SkSSE2ProcCoeffXfermode : public SkProcCoeffXfermode { | 14 class SK_API SkSSE2ProcCoeffXfermode : public SkProcCoeffXfermode { |
15 public: | 15 public: |
16 SkSSE2ProcCoeffXfermode(const ProcCoeff& rec, SkXfermode::Mode mode, | 16 SkSSE2ProcCoeffXfermode(const ProcCoeff& rec, SkXfermode::Mode mode, |
17 void* procSIMD) | 17 void* procSIMD) |
18 : INHERITED(rec, mode), fProcSIMD(procSIMD) {} | 18 : INHERITED(rec, mode), fProcSIMD(procSIMD) {} |
19 | 19 |
20 virtual void xfer32(SkPMColor dst[], const SkPMColor src[], int count, | 20 virtual void xfer32(SkPMColor dst[], const SkPMColor src[], int count, |
21 const SkAlpha aa[]) const SK_OVERRIDE; | 21 const SkAlpha aa[]) const SK_OVERRIDE; |
22 virtual void xfer16(uint16_t dst[], const SkPMColor src[], | 22 virtual void xfer16(uint16_t dst[], const SkPMColor src[], |
23 int count, const SkAlpha aa[]) const SK_OVERRIDE; | 23 int count, const SkAlpha aa[]) const SK_OVERRIDE; |
24 | 24 |
25 SK_TO_STRING_OVERRIDE() | 25 SK_TO_STRING_OVERRIDE() |
26 | 26 |
27 private: | 27 private: |
28 #ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING | |
29 SkSSE2ProcCoeffXfermode(SkReadBuffer& buffer); | |
30 #endif | |
31 | |
32 void* fProcSIMD; | 28 void* fProcSIMD; |
33 typedef SkProcCoeffXfermode INHERITED; | 29 typedef SkProcCoeffXfermode INHERITED; |
34 }; | 30 }; |
35 | 31 |
36 SkProcCoeffXfermode* SkPlatformXfermodeFactory_impl_SSE2(const ProcCoeff& rec, | 32 SkProcCoeffXfermode* SkPlatformXfermodeFactory_impl_SSE2(const ProcCoeff& rec, |
37 SkXfermode::Mode mode); | 33 SkXfermode::Mode mode); |
38 | 34 |
39 #endif // SkXfermode_opts_SSE2_DEFINED | 35 #endif // SkXfermode_opts_SSE2_DEFINED |
OLD | NEW |