| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 GeometryMapper_h | 5 #ifndef GeometryMapper_h |
| 6 #define GeometryMapper_h | 6 #define GeometryMapper_h |
| 7 | 7 |
| 8 #include "platform/graphics/paint/FloatClipRect.h" | 8 #include "platform/graphics/paint/FloatClipRect.h" |
| 9 #include "platform/graphics/paint/PropertyTreeState.h" | 9 #include "platform/graphics/paint/PropertyTreeState.h" |
| 10 #include "platform/transforms/TransformationMatrix.h" | 10 #include "platform/transforms/TransformationMatrix.h" |
| (...skipping 10 matching lines...) Expand all Loading... |
| 21 // corresponding to the new state. | 21 // corresponding to the new state. |
| 22 // | 22 // |
| 23 // ** WARNING** Callers to the methods below may not assume that any const | 23 // ** WARNING** Callers to the methods below may not assume that any const |
| 24 // references returned remain const across multiple calls into GeometryMapper. | 24 // references returned remain const across multiple calls into GeometryMapper. |
| 25 // If needed, callers must store local copies of the return values. | 25 // If needed, callers must store local copies of the return values. |
| 26 // | 26 // |
| 27 // Design document: http://bit.ly/28P4FDA | 27 // Design document: http://bit.ly/28P4FDA |
| 28 // | 28 // |
| 29 // TODO(chrishtr): take effect tree into account. | 29 // TODO(chrishtr): take effect tree into account. |
| 30 class PLATFORM_EXPORT GeometryMapper { | 30 class PLATFORM_EXPORT GeometryMapper { |
| 31 USING_FAST_MALLOC(GeometryMapper); |
| 32 |
| 31 public: | 33 public: |
| 32 static std::unique_ptr<GeometryMapper> create() { | 34 static std::unique_ptr<GeometryMapper> create() { |
| 33 return WTF::wrapUnique(new GeometryMapper()); | 35 return WTF::wrapUnique(new GeometryMapper()); |
| 34 } | 36 } |
| 35 | 37 |
| 36 // The runtime of m calls among localToAncestorVisualRect, localToAncestorRect | 38 // The runtime of m calls among localToAncestorVisualRect, localToAncestorRect |
| 37 // or ancestorToLocalRect with the same |ancestorState| parameter is | 39 // or ancestorToLocalRect with the same |ancestorState| parameter is |
| 38 // guaranteed to be O(n + m), where n is the number of transform and clip | 40 // guaranteed to be O(n + m), where n is the number of transform and clip |
| 39 // nodes in their respective property trees. | 41 // nodes in their respective property trees. |
| 40 | 42 |
| (...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 const TransformationMatrix m_identity; | 199 const TransformationMatrix m_identity; |
| 198 const FloatClipRect m_infiniteClip; | 200 const FloatClipRect m_infiniteClip; |
| 199 FloatClipRect m_tempRect; | 201 FloatClipRect m_tempRect; |
| 200 | 202 |
| 201 DISALLOW_COPY_AND_ASSIGN(GeometryMapper); | 203 DISALLOW_COPY_AND_ASSIGN(GeometryMapper); |
| 202 }; | 204 }; |
| 203 | 205 |
| 204 } // namespace blink | 206 } // namespace blink |
| 205 | 207 |
| 206 #endif // GeometryMapper_h | 208 #endif // GeometryMapper_h |
| OLD | NEW |