Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
SkColorFilterShader.h
Go to the documentation of this file.
1/*
2 * Copyright 2016 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 SkColorFilterShader_DEFINED
9#define SkColorFilterShader_DEFINED
10
16
17class SkColorFilter;
18class SkReadBuffer;
19class SkWriteBuffer;
20struct SkStageRec;
21
23public:
25
26 ShaderType type() const override { return ShaderType::kColorFilter; }
27
28 sk_sp<SkShader> shader() const { return fShader; }
29 sk_sp<SkColorFilterBase> filter() const { return fFilter; }
30 float alpha() const { return fAlpha; }
31
32private:
33 bool isOpaque() const override;
34 void flatten(SkWriteBuffer&) const override;
35 bool appendStages(const SkStageRec&, const SkShaders::MatrixRec&) const override;
36
38
39 sk_sp<SkShader> fShader;
41 float fAlpha;
42};
43
44#endif
#define SK_FLATTENABLE_HOOKS(type)
bool isOpaque() const override
sk_sp< SkColorFilterBase > filter() const
sk_sp< SkShader > shader() const
ShaderType type() const override
void flatten(SkWriteBuffer &) const override
bool appendStages(const SkStageRec &, const SkShaders::MatrixRec &) const override