Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
shader_mask_layer.h
Go to the documentation of this file.
1// Copyright 2013 The Flutter Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef FLUTTER_FLOW_LAYERS_SHADER_MASK_LAYER_H_
6#define FLUTTER_FLOW_LAYERS_SHADER_MASK_LAYER_H_
7
8#include "flutter/display_list/effects/dl_color_source.h"
9#include "flutter/flow/layers/cacheable_layer.h"
10
11namespace flutter {
12
14 public:
15 ShaderMaskLayer(std::shared_ptr<DlColorSource> color_source,
16 const SkRect& mask_rect,
17 DlBlendMode blend_mode);
18
19 void Diff(DiffContext* context, const Layer* old_layer) override;
20
21 void Preroll(PrerollContext* context) override;
22
23 void Paint(PaintContext& context) const override;
24
25 private:
26 std::shared_ptr<DlColorSource> color_source_;
27 SkRect mask_rect_;
28 DlBlendMode blend_mode_;
29
31};
32
33} // namespace flutter
34
35#endif // FLUTTER_FLOW_LAYERS_SHADER_MASK_LAYER_H_
void Diff(DiffContext *context, const Layer *old_layer) override
void Preroll(PrerollContext *context) override
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)
Definition macros.h:27