OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CC_BASE_REGION_H_ | 5 #ifndef CC_BASE_REGION_H_ |
6 #define CC_BASE_REGION_H_ | 6 #define CC_BASE_REGION_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "cc/base/cc_export.h" | 11 #include "cc/base/base_export.h" |
12 #include "third_party/skia/include/core/SkRegion.h" | 12 #include "third_party/skia/include/core/SkRegion.h" |
13 #include "ui/gfx/geometry/rect.h" | 13 #include "ui/gfx/geometry/rect.h" |
14 #include "ui/gfx/skia_util.h" | 14 #include "ui/gfx/skia_util.h" |
15 | 15 |
16 namespace base { | 16 namespace base { |
17 class Value; | 17 class Value; |
18 namespace trace_event { | 18 namespace trace_event { |
19 class TracedValue; | 19 class TracedValue; |
20 } | 20 } |
21 } | 21 } |
22 | 22 |
23 namespace cc { | 23 namespace cc { |
24 class SimpleEnclosedRegion; | 24 class SimpleEnclosedRegion; |
25 | 25 |
26 class CC_EXPORT Region { | 26 class CC_BASE_EXPORT Region { |
27 public: | 27 public: |
28 Region(); | 28 Region(); |
29 Region(const Region& region); | 29 Region(const Region& region); |
30 Region(const gfx::Rect& rect); // NOLINT(runtime/explicit) | 30 Region(const gfx::Rect& rect); // NOLINT(runtime/explicit) |
31 ~Region(); | 31 ~Region(); |
32 | 32 |
33 const Region& operator=(const gfx::Rect& rect); | 33 const Region& operator=(const gfx::Rect& rect); |
34 const Region& operator=(const Region& region); | 34 const Region& operator=(const Region& region); |
35 | 35 |
36 void Swap(Region* region); | 36 void Swap(Region* region); |
(...skipping 21 matching lines...) Expand all Loading... |
58 } | 58 } |
59 | 59 |
60 gfx::Rect bounds() const { | 60 gfx::Rect bounds() const { |
61 return gfx::SkIRectToRect(skregion_.getBounds()); | 61 return gfx::SkIRectToRect(skregion_.getBounds()); |
62 } | 62 } |
63 | 63 |
64 std::string ToString() const; | 64 std::string ToString() const; |
65 std::unique_ptr<base::Value> AsValue() const; | 65 std::unique_ptr<base::Value> AsValue() const; |
66 void AsValueInto(base::trace_event::TracedValue* array) const; | 66 void AsValueInto(base::trace_event::TracedValue* array) const; |
67 | 67 |
68 class CC_EXPORT Iterator { | 68 class CC_BASE_EXPORT Iterator { |
69 public: | 69 public: |
70 Iterator(); | 70 Iterator(); |
71 explicit Iterator(const Region& region); | 71 explicit Iterator(const Region& region); |
72 ~Iterator(); | 72 ~Iterator(); |
73 | 73 |
74 gfx::Rect rect() const { | 74 gfx::Rect rect() const { |
75 return gfx::SkIRectToRect(it_.rect()); | 75 return gfx::SkIRectToRect(it_.rect()); |
76 } | 76 } |
77 | 77 |
78 void next() { | 78 void next() { |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 | 131 |
132 inline Region UnionRegions(const Region& a, const gfx::Rect& b) { | 132 inline Region UnionRegions(const Region& a, const gfx::Rect& b) { |
133 Region result = a; | 133 Region result = a; |
134 result.Union(b); | 134 result.Union(b); |
135 return result; | 135 return result; |
136 } | 136 } |
137 | 137 |
138 } // namespace cc | 138 } // namespace cc |
139 | 139 |
140 #endif // CC_BASE_REGION_H_ | 140 #endif // CC_BASE_REGION_H_ |
OLD | NEW |