Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: cc/render_surface.h

Issue 11264056: cc: Use gfx:: Geometry types for positions, bounds, and related things. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: ScaleAsVector Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « cc/render_pass.cc ('k') | cc/render_surface.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2010 The Chromium Authors. All rights reserved. 1 // Copyright 2010 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 5
6 #ifndef RenderSurfaceChromium_h 6 #ifndef RenderSurfaceChromium_h
7 #define RenderSurfaceChromium_h 7 #define RenderSurfaceChromium_h
8 8
9 #include "base/basictypes.h" 9 #include "base/basictypes.h"
10 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
11 #include "FloatRect.h" 11 #include "ui/gfx/rect.h"
12 #include "IntRect.h" 12 #include "ui/gfx/rect_f.h"
13 #include <public/WebTransformationMatrix.h> 13 #include <public/WebTransformationMatrix.h>
14 #include <vector> 14 #include <vector>
15 15
16 namespace cc { 16 namespace cc {
17 17
18 class Layer; 18 class Layer;
19 19
20 class RenderSurface { 20 class RenderSurface {
21 public: 21 public:
22 explicit RenderSurface(Layer*); 22 explicit RenderSurface(Layer*);
23 ~RenderSurface(); 23 ~RenderSurface();
24 24
25 // Returns the rect that encloses the RenderSurfaceImpl including any reflec tion. 25 // Returns the rect that encloses the RenderSurfaceImpl including any reflec tion.
26 FloatRect drawableContentRect() const; 26 gfx::RectF drawableContentRect() const;
27 27
28 const IntRect& contentRect() const { return m_contentRect; } 28 const gfx::Rect& contentRect() const { return m_contentRect; }
29 void setContentRect(const IntRect& contentRect) { m_contentRect = contentRec t; } 29 void setContentRect(const gfx::Rect& contentRect) { m_contentRect = contentR ect; }
30 30
31 float drawOpacity() const { return m_drawOpacity; } 31 float drawOpacity() const { return m_drawOpacity; }
32 void setDrawOpacity(float drawOpacity) { m_drawOpacity = drawOpacity; } 32 void setDrawOpacity(float drawOpacity) { m_drawOpacity = drawOpacity; }
33 33
34 bool drawOpacityIsAnimating() const { return m_drawOpacityIsAnimating; } 34 bool drawOpacityIsAnimating() const { return m_drawOpacityIsAnimating; }
35 void setDrawOpacityIsAnimating(bool drawOpacityIsAnimating) { m_drawOpacityI sAnimating = drawOpacityIsAnimating; } 35 void setDrawOpacityIsAnimating(bool drawOpacityIsAnimating) { m_drawOpacityI sAnimating = drawOpacityIsAnimating; }
36 36
37 // This goes from content space with the origin in the center of the rect be ing transformed to the target space with the origin in the top left of the 37 // This goes from content space with the origin in the center of the rect be ing transformed to the target space with the origin in the top left of the
38 // rect being transformed. Position the rect so that the origin is in the ce nter of it before applying this transform. 38 // rect being transformed. Position the rect so that the origin is in the ce nter of it before applying this transform.
39 const WebKit::WebTransformationMatrix& drawTransform() const { return m_draw Transform; } 39 const WebKit::WebTransformationMatrix& drawTransform() const { return m_draw Transform; }
40 void setDrawTransform(const WebKit::WebTransformationMatrix& drawTransform) { m_drawTransform = drawTransform; } 40 void setDrawTransform(const WebKit::WebTransformationMatrix& drawTransform) { m_drawTransform = drawTransform; }
41 41
42 const WebKit::WebTransformationMatrix& screenSpaceTransform() const { return m_screenSpaceTransform; } 42 const WebKit::WebTransformationMatrix& screenSpaceTransform() const { return m_screenSpaceTransform; }
43 void setScreenSpaceTransform(const WebKit::WebTransformationMatrix& screenSp aceTransform) { m_screenSpaceTransform = screenSpaceTransform; } 43 void setScreenSpaceTransform(const WebKit::WebTransformationMatrix& screenSp aceTransform) { m_screenSpaceTransform = screenSpaceTransform; }
44 44
45 const WebKit::WebTransformationMatrix& replicaDrawTransform() const { return m_replicaDrawTransform; } 45 const WebKit::WebTransformationMatrix& replicaDrawTransform() const { return m_replicaDrawTransform; }
46 void setReplicaDrawTransform(const WebKit::WebTransformationMatrix& replicaD rawTransform) { m_replicaDrawTransform = replicaDrawTransform; } 46 void setReplicaDrawTransform(const WebKit::WebTransformationMatrix& replicaD rawTransform) { m_replicaDrawTransform = replicaDrawTransform; }
47 47
48 const WebKit::WebTransformationMatrix& replicaScreenSpaceTransform() const { return m_replicaScreenSpaceTransform; } 48 const WebKit::WebTransformationMatrix& replicaScreenSpaceTransform() const { return m_replicaScreenSpaceTransform; }
49 void setReplicaScreenSpaceTransform(const WebKit::WebTransformationMatrix& r eplicaScreenSpaceTransform) { m_replicaScreenSpaceTransform = replicaScreenSpace Transform; } 49 void setReplicaScreenSpaceTransform(const WebKit::WebTransformationMatrix& r eplicaScreenSpaceTransform) { m_replicaScreenSpaceTransform = replicaScreenSpace Transform; }
50 50
51 bool targetSurfaceTransformsAreAnimating() const { return m_targetSurfaceTra nsformsAreAnimating; } 51 bool targetSurfaceTransformsAreAnimating() const { return m_targetSurfaceTra nsformsAreAnimating; }
52 void setTargetSurfaceTransformsAreAnimating(bool animating) { m_targetSurfac eTransformsAreAnimating = animating; } 52 void setTargetSurfaceTransformsAreAnimating(bool animating) { m_targetSurfac eTransformsAreAnimating = animating; }
53 bool screenSpaceTransformsAreAnimating() const { return m_screenSpaceTransfo rmsAreAnimating; } 53 bool screenSpaceTransformsAreAnimating() const { return m_screenSpaceTransfo rmsAreAnimating; }
54 void setScreenSpaceTransformsAreAnimating(bool animating) { m_screenSpaceTra nsformsAreAnimating = animating; } 54 void setScreenSpaceTransformsAreAnimating(bool animating) { m_screenSpaceTra nsformsAreAnimating = animating; }
55 55
56 const IntRect& clipRect() const { return m_clipRect; } 56 const gfx::Rect& clipRect() const { return m_clipRect; }
57 void setClipRect(const IntRect& clipRect) { m_clipRect = clipRect; } 57 void setClipRect(const gfx::Rect& clipRect) { m_clipRect = clipRect; }
58 58
59 typedef std::vector<scoped_refptr<Layer> > LayerList; 59 typedef std::vector<scoped_refptr<Layer> > LayerList;
60 LayerList& layerList() { return m_layerList; } 60 LayerList& layerList() { return m_layerList; }
61 // A no-op since DelegatedRendererLayers on the main thread don't have any 61 // A no-op since DelegatedRendererLayers on the main thread don't have any
62 // RenderPasses so they can't contribute to a surface. 62 // RenderPasses so they can't contribute to a surface.
63 void addContributingDelegatedRenderPassLayer(Layer*) { } 63 void addContributingDelegatedRenderPassLayer(Layer*) { }
64 void clearLayerLists() { m_layerList.clear(); } 64 void clearLayerLists() { m_layerList.clear(); }
65 65
66 void setNearestAncestorThatMovesPixels(RenderSurface* surface) { m_nearestAn cestorThatMovesPixels = surface; } 66 void setNearestAncestorThatMovesPixels(RenderSurface* surface) { m_nearestAn cestorThatMovesPixels = surface; }
67 const RenderSurface* nearestAncestorThatMovesPixels() const { return m_neare stAncestorThatMovesPixels; } 67 const RenderSurface* nearestAncestorThatMovesPixels() const { return m_neare stAncestorThatMovesPixels; }
68 68
69 private: 69 private:
70 friend struct LayerIteratorActions; 70 friend struct LayerIteratorActions;
71 71
72 Layer* m_owningLayer; 72 Layer* m_owningLayer;
73 73
74 // Uses this surface's space. 74 // Uses this surface's space.
75 IntRect m_contentRect; 75 gfx::Rect m_contentRect;
76 76
77 float m_drawOpacity; 77 float m_drawOpacity;
78 bool m_drawOpacityIsAnimating; 78 bool m_drawOpacityIsAnimating;
79 WebKit::WebTransformationMatrix m_drawTransform; 79 WebKit::WebTransformationMatrix m_drawTransform;
80 WebKit::WebTransformationMatrix m_screenSpaceTransform; 80 WebKit::WebTransformationMatrix m_screenSpaceTransform;
81 WebKit::WebTransformationMatrix m_replicaDrawTransform; 81 WebKit::WebTransformationMatrix m_replicaDrawTransform;
82 WebKit::WebTransformationMatrix m_replicaScreenSpaceTransform; 82 WebKit::WebTransformationMatrix m_replicaScreenSpaceTransform;
83 bool m_targetSurfaceTransformsAreAnimating; 83 bool m_targetSurfaceTransformsAreAnimating;
84 bool m_screenSpaceTransformsAreAnimating; 84 bool m_screenSpaceTransformsAreAnimating;
85 85
86 // Uses the space of the surface's target surface. 86 // Uses the space of the surface's target surface.
87 IntRect m_clipRect; 87 gfx::Rect m_clipRect;
88 88
89 LayerList m_layerList; 89 LayerList m_layerList;
90 90
91 // The nearest ancestor target surface that will contain the contents of thi s surface, and that is going 91 // The nearest ancestor target surface that will contain the contents of thi s surface, and that is going
92 // to move pixels within the surface (such as with a blur). This can point t o itself. 92 // to move pixels within the surface (such as with a blur). This can point t o itself.
93 RenderSurface* m_nearestAncestorThatMovesPixels; 93 RenderSurface* m_nearestAncestorThatMovesPixels;
94 94
95 // For LayerIteratorActions 95 // For LayerIteratorActions
96 int m_targetRenderSurfaceLayerIndexHistory; 96 int m_targetRenderSurfaceLayerIndexHistory;
97 int m_currentLayerIndexHistory; 97 int m_currentLayerIndexHistory;
98 98
99 DISALLOW_COPY_AND_ASSIGN(RenderSurface); 99 DISALLOW_COPY_AND_ASSIGN(RenderSurface);
100 }; 100 };
101 101
102 } 102 }
103 #endif 103 #endif
OLDNEW
« no previous file with comments | « cc/render_pass.cc ('k') | cc/render_surface.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698