OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 Transform3DDisplayItem_h | 5 #ifndef Transform3DDisplayItem_h |
6 #define Transform3DDisplayItem_h | 6 #define Transform3DDisplayItem_h |
7 | 7 |
8 #include "platform/geometry/FloatPoint3D.h" | 8 #include "platform/geometry/FloatPoint3D.h" |
9 #include "platform/graphics/paint/DisplayItem.h" | 9 #include "platform/graphics/paint/DisplayItem.h" |
10 #include "platform/transforms/TransformationMatrix.h" | 10 #include "platform/transforms/TransformationMatrix.h" |
11 #include "platform/wtf/Assertions.h" | 11 #include "platform/wtf/Assertions.h" |
12 | 12 |
13 namespace blink { | 13 namespace blink { |
14 | 14 |
15 class PLATFORM_EXPORT BeginTransform3DDisplayItem final | 15 class PLATFORM_EXPORT BeginTransform3DDisplayItem final |
16 : public PairedBeginDisplayItem { | 16 : public PairedBeginDisplayItem { |
17 public: | 17 public: |
18 BeginTransform3DDisplayItem(const DisplayItemClient& client, | 18 BeginTransform3DDisplayItem(const DisplayItemClient& client, |
19 Type type, | 19 Type type, |
20 const TransformationMatrix& transform, | 20 const TransformationMatrix& transform, |
21 const FloatPoint3D& transform_origin) | 21 const FloatPoint3D& transform_origin) |
22 : PairedBeginDisplayItem(client, type, sizeof(*this)), | 22 : PairedBeginDisplayItem(client, type, sizeof(*this)), |
23 transform_(transform), | 23 transform_(transform), |
24 transform_origin_(transform_origin) { | 24 transform_origin_(transform_origin) { |
25 ASSERT(DisplayItem::IsTransform3DType(type)); | 25 DCHECK(DisplayItem::IsTransform3DType(type)); |
26 } | 26 } |
27 | 27 |
28 void Replay(GraphicsContext&) const override; | 28 void Replay(GraphicsContext&) const override; |
29 void AppendToWebDisplayItemList(const IntRect&, | 29 void AppendToWebDisplayItemList(const IntRect&, |
30 WebDisplayItemList*) const override; | 30 WebDisplayItemList*) const override; |
31 | 31 |
32 const TransformationMatrix& Transform() const { return transform_; } | 32 const TransformationMatrix& Transform() const { return transform_; } |
33 const FloatPoint3D& TransformOrigin() const { return transform_origin_; } | 33 const FloatPoint3D& TransformOrigin() const { return transform_origin_; } |
34 | 34 |
35 private: | 35 private: |
(...skipping 11 matching lines...) Expand all Loading... |
47 | 47 |
48 const TransformationMatrix transform_; | 48 const TransformationMatrix transform_; |
49 const FloatPoint3D transform_origin_; | 49 const FloatPoint3D transform_origin_; |
50 }; | 50 }; |
51 | 51 |
52 class PLATFORM_EXPORT EndTransform3DDisplayItem final | 52 class PLATFORM_EXPORT EndTransform3DDisplayItem final |
53 : public PairedEndDisplayItem { | 53 : public PairedEndDisplayItem { |
54 public: | 54 public: |
55 EndTransform3DDisplayItem(const DisplayItemClient& client, Type type) | 55 EndTransform3DDisplayItem(const DisplayItemClient& client, Type type) |
56 : PairedEndDisplayItem(client, type, sizeof(*this)) { | 56 : PairedEndDisplayItem(client, type, sizeof(*this)) { |
57 ASSERT(DisplayItem::IsEndTransform3DType(type)); | 57 DCHECK(DisplayItem::IsEndTransform3DType(type)); |
58 } | 58 } |
59 | 59 |
60 void Replay(GraphicsContext&) const override; | 60 void Replay(GraphicsContext&) const override; |
61 void AppendToWebDisplayItemList(const IntRect&, | 61 void AppendToWebDisplayItemList(const IntRect&, |
62 WebDisplayItemList*) const override; | 62 WebDisplayItemList*) const override; |
63 | 63 |
64 private: | 64 private: |
65 #if DCHECK_IS_ON() | 65 #if DCHECK_IS_ON() |
66 bool IsEndAndPairedWith(DisplayItem::Type other_type) const final { | 66 bool IsEndAndPairedWith(DisplayItem::Type other_type) const final { |
67 return DisplayItem::Transform3DTypeToEndTransform3DType(other_type) == | 67 return DisplayItem::Transform3DTypeToEndTransform3DType(other_type) == |
68 GetType(); | 68 GetType(); |
69 } | 69 } |
70 #endif | 70 #endif |
71 }; | 71 }; |
72 | 72 |
73 } // namespace blink | 73 } // namespace blink |
74 | 74 |
75 #endif // Transform3DDisplayItem_h | 75 #endif // Transform3DDisplayItem_h |
OLD | NEW |