Flutter Engine
transform_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_TRANSFORM_LAYER_H_
6 #define FLUTTER_FLOW_LAYERS_TRANSFORM_LAYER_H_
7 
8 #include "flutter/flow/layers/container_layer.h"
9 
10 namespace flutter {
11 
12 // Be careful that SkMatrix's default constructor doesn't initialize the matrix
13 // at all. Hence |set_transform| must be called with an initialized SkMatrix.
15  public:
16  TransformLayer(const SkMatrix& transform);
17 
18  void Preroll(PrerollContext* context, const SkMatrix& matrix) override;
19 
20  void Paint(PaintContext& context) const override;
21 
22 #if defined(LEGACY_FUCHSIA_EMBEDDER)
23  void UpdateScene(std::shared_ptr<SceneUpdateContext> context) override;
24 #endif
25 
26  private:
27  SkMatrix transform_;
28 
29  FML_DISALLOW_COPY_AND_ASSIGN(TransformLayer);
30 };
31 
32 } // namespace flutter
33 
34 #endif // FLUTTER_FLOW_LAYERS_TRANSFORM_LAYER_H_
void Paint(PaintContext &context) const override
TransformLayer(const SkMatrix &transform)
void Preroll(PrerollContext *context, const SkMatrix &matrix) override