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_maskfilter_DEFINED 12 #define sk_maskfilter_DEFINED 13 14 #include "sk_types.h" 15 16 typedef enum { 17 NORMAL_SK_BLUR_STYLE, //!< fuzzy inside and outside 18 SOLID_SK_BLUR_STYLE, //!< solid inside, fuzzy outside 19 OUTER_SK_BLUR_STYLE, //!< nothing inside, fuzzy outside 20 INNER_SK_BLUR_STYLE, //!< fuzzy inside, nothing outside 21 } sk_blurstyle_t; 22 23 SK_C_PLUS_PLUS_BEGIN_GUARD 24 25 /** 26 Increment the reference count on the given sk_maskfilter_t. Must be 27 balanced by a call to sk_maskfilter_unref(). 28 */ 29 void sk_maskfilter_ref(sk_maskfilter_t*); 30 /** 31 Decrement the reference count. If the reference count is 1 before 32 the decrement, then release both the memory holding the 33 sk_maskfilter_t and any other associated resources. New 34 sk_maskfilter_t are created with a reference count of 1. 35 */ 36 void sk_maskfilter_unref(sk_maskfilter_t*); 37 38 /** 39 Create a blur maskfilter. 40 @param sk_blurstyle_t The SkBlurStyle to use 41 @param sigma Standard deviation of the Gaussian blur to apply. Must be > 0. 42 */ 43 sk_maskfilter_t* sk_maskfilter_new_blur(sk_blurstyle_t, float sigma); 44 45 SK_C_PLUS_PLUS_END_GUARD 46 47 #endif 48