1 /*
2  * Copyright 2014 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 // EXPERIMENTAL EXPERIMENTAL EXPERIMENTAL EXPERIMENTAL
9 // DO NOT USE -- FOR INTERNAL TESTING ONLY
10 
11 #ifndef sk_shader_DEFINED
12 #define sk_shader_DEFINED
13 
14 #include "sk_types.h"
15 
16 SK_C_PLUS_PLUS_BEGIN_GUARD
17 
18 void sk_shader_ref(sk_shader_t*);
19 void sk_shader_unref(sk_shader_t*);
20 
21 typedef enum {
22     CLAMP_SK_SHADER_TILEMODE,
23     REPEAT_SK_SHADER_TILEMODE,
24     MIRROR_SK_SHADER_TILEMODE,
25 } sk_shader_tilemode_t;
26 
27 sk_shader_t* sk_shader_new_linear_gradient(const sk_point_t pts[2],
28                                            const sk_color_t colors[],
29                                            const float colorPos[],
30                                            int colorCount,
31                                            sk_shader_tilemode_t tileMode,
32                                            const sk_matrix_t* localMatrix);
33 
34 
35 SK_C_PLUS_PLUS_END_GUARD
36 
37 #endif
38