Flutter Engine
The Flutter Engine
SkSGPlane.h
Go to the documentation of this file.
1/*
2 * Copyright 2018 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 SkSGPlane_DEFINED
9#define SkSGPlane_DEFINED
10
11#include "include/core/SkPath.h"
12#include "include/core/SkRect.h"
15
16class SkCanvas;
17class SkMatrix;
18class SkPaint;
19struct SkPoint;
20
21namespace sksg {
22class InvalidationController;
23
24/**
25 * Concrete Geometry node, representing the whole canvas.
26 */
27class Plane final : public GeometryNode {
28public:
29 static sk_sp<Plane> Make() { return sk_sp<Plane>(new Plane()); }
30
31protected:
32 void onClip(SkCanvas*, bool antiAlias) const override;
33 void onDraw(SkCanvas*, const SkPaint&) const override;
34 bool onContains(const SkPoint&) const override;
35
37 SkPath onAsPath() const override;
38
39private:
40 Plane();
41
42 using INHERITED = GeometryNode;
43};
44
45} // namespace sksg
46
47#endif // SkSGPlane_DEFINED
Definition: SkPath.h:59
static sk_sp< Plane > Make()
Definition: SkSGPlane.h:29
bool onContains(const SkPoint &) const override
Definition: SkSGPlane.cpp:28
void onDraw(SkCanvas *, const SkPaint &) const override
Definition: SkSGPlane.cpp:24
SkPath onAsPath() const override
Definition: SkSGPlane.cpp:36
SkRect onRevalidate(InvalidationController *, const SkMatrix &) override
Definition: SkSGPlane.cpp:30
void onClip(SkCanvas *, bool antiAlias) const override
Definition: SkSGPlane.cpp:22
Definition: Skottie.h:32