/src/skia/include/core/SkBlender.h
Line | Count | Source |
1 | | /* |
2 | | * Copyright 2021 Google LLC |
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 SkBlender_DEFINED |
9 | | #define SkBlender_DEFINED |
10 | | |
11 | | #include "include/core/SkBlendMode.h" |
12 | | #include "include/core/SkFlattenable.h" |
13 | | |
14 | | /** |
15 | | * SkBlender represents a custom blend function in the Skia pipeline. When an SkBlender is |
16 | | * present in a paint, the SkBlendMode is ignored. A blender combines a source color (the |
17 | | * result of our paint) and destination color (from the canvas) into a final color. |
18 | | */ |
19 | | class SK_API SkBlender : public SkFlattenable { |
20 | | public: |
21 | | /** |
22 | | * Create a blender that implements the specified BlendMode. |
23 | | */ |
24 | | static sk_sp<SkBlender> Mode(SkBlendMode mode); |
25 | | |
26 | | private: |
27 | 3.75k | SkBlender() = default; |
28 | | friend class SkBlenderBase; |
29 | | }; |
30 | | |
31 | | #endif |