OLD | NEW |
| (Empty) |
1 /* | |
2 * Copyright 2015 Google Inc. | |
3 * | |
4 * Use of this source code is governed by a BSD-style license that can be | |
5 * found in the LICENSE file. | |
6 */ | |
7 | |
8 #ifndef SkOpts_DEFINED | |
9 #define SkOpts_DEFINED | |
10 | |
11 #include "SkTypes.h" | |
12 #include "SkXfermode.h" | |
13 | |
14 struct ProcCoeff; | |
15 | |
16 namespace SkOpts { | |
17 // Call to replace pointers to portable functions with pointers to CPU-speci
fic functions. | |
18 // Thread-safe and idempotent. | |
19 // Called by SkGraphics::Init(), and automatically #if SK_ALLOW_STATIC_GLOBA
L_INITIALIZERS. | |
20 void Init(); | |
21 | |
22 // Declare function pointers here... | |
23 | |
24 // Returns a fast approximation of 1.0f/sqrtf(x). | |
25 extern float (*rsqrt)(float); | |
26 | |
27 // See SkUtils.h | |
28 extern void (*memset16)(uint16_t[], uint16_t, int); | |
29 extern void (*memset32)(uint32_t[], uint32_t, int); | |
30 | |
31 // May return nullptr if we haven't specialized the given Mode. | |
32 extern SkXfermode* (*create_xfermode)(const ProcCoeff&, SkXfermode::Mode); | |
33 } | |
34 | |
35 #endif//SkOpts_DEFINED | |
OLD | NEW |