Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
third_party
skia
src
core
SkBlendModeBlender.h
Go to the documentation of this file.
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 SkBlendModeBlender_DEFINED
9
#define SkBlendModeBlender_DEFINED
10
11
#include "
include/core/SkFlattenable.h
"
12
#include "
src/core/SkBlenderBase.h
"
13
14
#include <optional>
15
16
class
SkReadBuffer
;
17
class
SkWriteBuffer
;
18
enum class
SkBlendMode
;
19
struct
SkStageRec
;
20
21
class
SkBlendModeBlender
:
public
SkBlenderBase
{
22
public
:
23
SkBlendModeBlender
(
SkBlendMode
mode
) : fMode(
mode
) {}
24
25
BlenderType
type
()
const override
{
return
BlenderType::kBlendMode; }
26
SkBlendMode
mode
()
const
{
return
fMode; }
27
28
SK_FLATTENABLE_HOOKS
(
SkBlendModeBlender
)
29
30
private
:
31
using
INHERITED =
SkBlenderBase
;
32
33
std::optional<SkBlendMode>
asBlendMode
() const final {
return
fMode; }
34
35
void
flatten
(
SkWriteBuffer
&
buffer
)
const override
;
36
37
bool
onAppendStages
(
const
SkStageRec
& rec)
const override
;
38
39
SkBlendMode
fMode;
40
};
41
42
#endif
SkBlendMode
SkBlendMode
Definition
SkBlendMode.h:38
SkBlenderBase.h
SkFlattenable.h
SK_FLATTENABLE_HOOKS
#define SK_FLATTENABLE_HOOKS(type)
Definition
SkFlattenable.h:108
SkBlendModeBlender
Definition
SkBlendModeBlender.h:21
SkBlendModeBlender::asBlendMode
std::optional< SkBlendMode > asBlendMode() const final
Definition
SkBlendModeBlender.h:33
SkBlendModeBlender::flatten
void flatten(SkWriteBuffer &buffer) const override
Definition
SkBlendModeBlender.cpp:70
SkBlendModeBlender::onAppendStages
bool onAppendStages(const SkStageRec &rec) const override
Definition
SkBlendModeBlender.cpp:74
SkBlendModeBlender::SkBlendModeBlender
SkBlendModeBlender(SkBlendMode mode)
Definition
SkBlendModeBlender.h:23
SkBlendModeBlender::mode
SkBlendMode mode() const
Definition
SkBlendModeBlender.h:26
SkBlendModeBlender::type
BlenderType type() const override
Definition
SkBlendModeBlender.h:25
SkBlenderBase
Definition
SkBlenderBase.h:39
SkBlenderBase::BlenderType
BlenderType
Definition
SkBlenderBase.h:60
SkBlender::SkBlenderBase
friend class SkBlenderBase
Definition
SkBlender.h:28
SkReadBuffer
Definition
SkReadBuffer.h:52
SkWriteBuffer
Definition
SkWriteBuffer.h:41
buffer
static const uint8_t buffer[]
Definition
fl_pixel_buffer_texture_test.cc:44
SkStageRec
Definition
SkEffectPriv.h:20
Generated on Fri Apr 26 2024 06:16:35 for Flutter Engine by
1.9.8