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

Side by Side Diff: cc/render_surface.h

Issue 11122003: [cc] Rename all cc/ filenames to Chromium style (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 months 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_sink.h ('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 2012 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
5
6 #ifndef RenderSurfaceChromium_h
7 #define RenderSurfaceChromium_h
8
9 #if USE(ACCELERATED_COMPOSITING)
10
11 #include "base/basictypes.h"
12 #include "base/memory/ref_counted.h"
13 #include "FloatRect.h"
14 #include "IntRect.h"
15 #include <public/WebTransformationMatrix.h>
16 #include <vector>
17
18 namespace cc {
19
20 class LayerChromium;
21
22 class RenderSurfaceChromium {
23 public:
24 explicit RenderSurfaceChromium(LayerChromium*);
25 ~RenderSurfaceChromium();
26
27 // Returns the rect that encloses the RenderSurface including any reflection .
28 FloatRect drawableContentRect() const;
29
30 const IntRect& contentRect() const { return m_contentRect; }
31 void setContentRect(const IntRect& contentRect) { m_contentRect = contentRec t; }
32
33 float drawOpacity() const { return m_drawOpacity; }
34 void setDrawOpacity(float drawOpacity) { m_drawOpacity = drawOpacity; }
35
36 bool drawOpacityIsAnimating() const { return m_drawOpacityIsAnimating; }
37 void setDrawOpacityIsAnimating(bool drawOpacityIsAnimating) { m_drawOpacityI sAnimating = drawOpacityIsAnimating; }
38
39 // 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
40 // rect being transformed. Position the rect so that the origin is in the ce nter of it before applying this transform.
41 const WebKit::WebTransformationMatrix& drawTransform() const { return m_draw Transform; }
42 void setDrawTransform(const WebKit::WebTransformationMatrix& drawTransform) { m_drawTransform = drawTransform; }
43
44 const WebKit::WebTransformationMatrix& screenSpaceTransform() const { return m_screenSpaceTransform; }
45 void setScreenSpaceTransform(const WebKit::WebTransformationMatrix& screenSp aceTransform) { m_screenSpaceTransform = screenSpaceTransform; }
46
47 const WebKit::WebTransformationMatrix& replicaDrawTransform() const { return m_replicaDrawTransform; }
48 void setReplicaDrawTransform(const WebKit::WebTransformationMatrix& replicaD rawTransform) { m_replicaDrawTransform = replicaDrawTransform; }
49
50 const WebKit::WebTransformationMatrix& replicaScreenSpaceTransform() const { return m_replicaScreenSpaceTransform; }
51 void setReplicaScreenSpaceTransform(const WebKit::WebTransformationMatrix& r eplicaScreenSpaceTransform) { m_replicaScreenSpaceTransform = replicaScreenSpace Transform; }
52
53 bool targetSurfaceTransformsAreAnimating() const { return m_targetSurfaceTra nsformsAreAnimating; }
54 void setTargetSurfaceTransformsAreAnimating(bool animating) { m_targetSurfac eTransformsAreAnimating = animating; }
55 bool screenSpaceTransformsAreAnimating() const { return m_screenSpaceTransfo rmsAreAnimating; }
56 void setScreenSpaceTransformsAreAnimating(bool animating) { m_screenSpaceTra nsformsAreAnimating = animating; }
57
58 const IntRect& clipRect() const { return m_clipRect; }
59 void setClipRect(const IntRect& clipRect) { m_clipRect = clipRect; }
60
61 typedef std::vector<scoped_refptr<LayerChromium> > LayerList;
62 LayerList& layerList() { return m_layerList; }
63 // A no-op since DelegatedRendererLayers on the main thread don't have any
64 // RenderPasses so they can't contribute to a surface.
65 void addContributingDelegatedRenderPassLayer(LayerChromium*) { }
66 void clearLayerLists() { m_layerList.clear(); }
67
68 void setNearestAncestorThatMovesPixels(RenderSurfaceChromium* surface) { m_n earestAncestorThatMovesPixels = surface; }
69 const RenderSurfaceChromium* nearestAncestorThatMovesPixels() const { return m_nearestAncestorThatMovesPixels; }
70
71 private:
72 friend struct CCLayerIteratorActions;
73
74 LayerChromium* m_owningLayer;
75
76 // Uses this surface's space.
77 IntRect m_contentRect;
78
79 float m_drawOpacity;
80 bool m_drawOpacityIsAnimating;
81 WebKit::WebTransformationMatrix m_drawTransform;
82 WebKit::WebTransformationMatrix m_screenSpaceTransform;
83 WebKit::WebTransformationMatrix m_replicaDrawTransform;
84 WebKit::WebTransformationMatrix m_replicaScreenSpaceTransform;
85 bool m_targetSurfaceTransformsAreAnimating;
86 bool m_screenSpaceTransformsAreAnimating;
87
88 // Uses the space of the surface's target surface.
89 IntRect m_clipRect;
90
91 LayerList m_layerList;
92
93 // The nearest ancestor target surface that will contain the contents of thi s surface, and that is going
94 // to move pixels within the surface (such as with a blur). This can point t o itself.
95 RenderSurfaceChromium* m_nearestAncestorThatMovesPixels;
96
97 // For CCLayerIteratorActions
98 int m_targetRenderSurfaceLayerIndexHistory;
99 int m_currentLayerIndexHistory;
100
101 DISALLOW_COPY_AND_ASSIGN(RenderSurfaceChromium);
102 };
103
104 }
105 #endif // USE(ACCELERATED_COMPOSITING)
106
107 #endif
OLDNEW
« no previous file with comments | « cc/render_pass_sink.h ('k') | cc/render_surface.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698