2016-08-17 14:59:41 +00:00
|
|
|
/*
|
|
|
|
* Copyright 2016 Google Inc.
|
|
|
|
*
|
|
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
|
|
* found in the LICENSE file.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef SkGaussianEdgeShader_DEFINED
|
|
|
|
#define SkGaussianEdgeShader_DEFINED
|
|
|
|
|
|
|
|
#include "SkShader.h"
|
|
|
|
|
|
|
|
class SK_API SkGaussianEdgeShader {
|
|
|
|
public:
|
|
|
|
/** Returns a shader that applies a Gaussian blur depending on distance to the edge
|
|
|
|
* Currently this is only useable with Circle and RRect shapes on the GPU backend.
|
|
|
|
* Raster will draw nothing.
|
|
|
|
*/
|
2016-09-16 16:13:15 +00:00
|
|
|
static sk_sp<SkShader> Make();
|
2016-08-17 14:59:41 +00:00
|
|
|
|
|
|
|
SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP()
|
2016-09-08 16:02:43 +00:00
|
|
|
|
|
|
|
private:
|
|
|
|
SkGaussianEdgeShader(); // can't be instantiated
|
2016-08-17 14:59:41 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|