1 
2 /*
3  * Copyright 2006 The Android Open Source Project
4  *
5  * Use of this source code is governed by a BSD-style license that can be
6  * found in the LICENSE file.
7  */
8 
9 
10 #include "SkDrawEmboss.h"
11 
12 #if SK_USE_CONDENSED_INFO == 0
13 
14 const SkMemberInfo SkDrawEmboss::fInfo[] = {
15     SK_MEMBER(fAmbient, Float),
16     SK_MEMBER_ARRAY(fDirection, Float),
17     SK_MEMBER(fSigma, Float),
18     SK_MEMBER(fSpecular, Float)
19 };
20 
21 #endif
22 
23 DEFINE_GET_MEMBER(SkDrawEmboss);
24 
SkDrawEmboss()25 SkDrawEmboss::SkDrawEmboss() : fSigma(-1) {
26     fDirection.setCount(3);
27 }
28 
getMaskFilter()29 SkMaskFilter* SkDrawEmboss::getMaskFilter() {
30     if (fSigma < 0 || fDirection.count() !=3)
31         return nullptr;
32     return SkBlurMaskFilter::CreateEmboss(fSigma, fDirection.begin(),
33                                           fAmbient, fSpecular);
34 }
35