Flutter Engine
The Flutter Engine
third_party
skia
modules
sksg
include
SkSGInvalidationController.h
Go to the documentation of this file.
1
/*
2
* Copyright 2017 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 SkSGInvalidationController_DEFINED
9
#define SkSGInvalidationController_DEFINED
10
11
#include "
include/core/SkMatrix.h
"
12
#include "
include/core/SkRect.h
"
13
#include "
include/core/SkTypes.h
"
14
15
#include <vector>
16
17
namespace
sksg
{
18
19
/**
20
* Receiver for invalidation events.
21
*
22
* Tracks dirty regions for repaint.
23
*/
24
class
InvalidationController
{
25
public
:
26
InvalidationController
();
27
InvalidationController
(
const
InvalidationController
&) =
delete
;
28
InvalidationController
&
operator=
(
const
InvalidationController
&) =
delete
;
29
30
void
inval
(
const
SkRect
&,
const
SkMatrix
& ctm =
SkMatrix::I
());
31
32
const
SkRect
&
bounds
()
const
{
return
fBounds; }
33
34
auto
begin
()
const
{
return
fRects.cbegin(); }
35
auto
end
()
const
{
return
fRects.cend(); }
36
37
void
reset
();
38
39
private
:
40
std::vector<SkRect> fRects;
41
SkRect
fBounds;
42
};
43
44
}
// namespace sksg
45
46
#endif
// SkSGInvalidationController_DEFINED
SkMatrix.h
SkRect.h
SkTypes.h
SkMatrix
Definition:
SkMatrix.h:54
SkMatrix::I
static const SkMatrix & I()
Definition:
SkMatrix.cpp:1544
sksg::InvalidationController
Definition:
SkSGInvalidationController.h:24
sksg::InvalidationController::inval
void inval(const SkRect &, const SkMatrix &ctm=SkMatrix::I())
Definition:
SkSGInvalidationController.cpp:17
sksg::InvalidationController::InvalidationController
InvalidationController(const InvalidationController &)=delete
sksg::InvalidationController::InvalidationController
InvalidationController()
Definition:
SkSGInvalidationController.cpp:15
sksg::InvalidationController::end
auto end() const
Definition:
SkSGInvalidationController.h:35
sksg::InvalidationController::begin
auto begin() const
Definition:
SkSGInvalidationController.h:34
sksg::InvalidationController::operator=
InvalidationController & operator=(const InvalidationController &)=delete
sksg::InvalidationController::bounds
const SkRect & bounds() const
Definition:
SkSGInvalidationController.h:32
sksg::InvalidationController::reset
void reset()
Definition:
SkSGInvalidationController.cpp:32
sksg
Definition:
Skottie.h:32
SkRect
Definition:
extension.cpp:13
Generated on Sun Jun 23 2024 21:56:07 for Flutter Engine by
1.9.4