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

Side by Side Diff: cc/layer_impl.h

Issue 11472021: cc: Pass LayerTreeHostImpl to LayerImpl constructor (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 8 years 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/layer.cc ('k') | cc/layer_impl.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 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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_LAYER_IMPL_H_ 5 #ifndef CC_LAYER_IMPL_H_
6 #define CC_LAYER_IMPL_H_ 6 #define CC_LAYER_IMPL_H_
7 7
8 #include <public/WebFilterOperations.h> 8 #include <public/WebFilterOperations.h>
9 #include <string> 9 #include <string>
10 10
(...skipping 24 matching lines...) Expand all
35 class ScrollbarAnimationController; 35 class ScrollbarAnimationController;
36 class ScrollbarLayerImpl; 36 class ScrollbarLayerImpl;
37 class Layer; 37 class Layer;
38 38
39 struct AppendQuadsData; 39 struct AppendQuadsData;
40 40
41 class CC_EXPORT LayerImpl { 41 class CC_EXPORT LayerImpl {
42 public: 42 public:
43 typedef ScopedPtrVector<LayerImpl> LayerList; 43 typedef ScopedPtrVector<LayerImpl> LayerList;
44 44
45 static scoped_ptr<LayerImpl> create(int id) 45 static scoped_ptr<LayerImpl> create(LayerTreeHostImpl* hostImpl, int id)
46 { 46 {
47 return make_scoped_ptr(new LayerImpl(id)); 47 return make_scoped_ptr(new LayerImpl(hostImpl, id));
48 } 48 }
49 49
50 virtual ~LayerImpl(); 50 virtual ~LayerImpl();
51 51
52 int id() const; 52 int id() const;
53 53
54 // Tree structure. 54 // Tree structure.
55 LayerImpl* parent() { return m_parent; } 55 LayerImpl* parent() { return m_parent; }
56 const LayerImpl* parent() const { return m_parent; } 56 const LayerImpl* parent() const { return m_parent; }
57 const LayerList& children() const { return m_children; } 57 const LayerList& children() const { return m_children; }
58 void addChild(scoped_ptr<LayerImpl>); 58 void addChild(scoped_ptr<LayerImpl>);
59 void removeFromParent(); 59 void removeFromParent();
60 void removeAllChildren(); 60 void removeAllChildren();
61 61
62 void setMaskLayer(scoped_ptr<LayerImpl>); 62 void setMaskLayer(scoped_ptr<LayerImpl>);
63 LayerImpl* maskLayer() { return m_maskLayer.get(); } 63 LayerImpl* maskLayer() { return m_maskLayer.get(); }
64 const LayerImpl* maskLayer() const { return m_maskLayer.get(); } 64 const LayerImpl* maskLayer() const { return m_maskLayer.get(); }
65 65
66 void setReplicaLayer(scoped_ptr<LayerImpl>); 66 void setReplicaLayer(scoped_ptr<LayerImpl>);
67 LayerImpl* replicaLayer() { return m_replicaLayer.get(); } 67 LayerImpl* replicaLayer() { return m_replicaLayer.get(); }
68 const LayerImpl* replicaLayer() const { return m_replicaLayer.get(); } 68 const LayerImpl* replicaLayer() const { return m_replicaLayer.get(); }
69 69
70 bool hasMask() const { return m_maskLayer; } 70 bool hasMask() const { return m_maskLayer; }
71 bool hasReplica() const { return m_replicaLayer; } 71 bool hasReplica() const { return m_replicaLayer; }
72 bool replicaHasMask() const { return m_replicaLayer && (m_maskLayer || m_rep licaLayer->m_maskLayer); } 72 bool replicaHasMask() const { return m_replicaLayer && (m_maskLayer || m_rep licaLayer->m_maskLayer); }
73 73
74 LayerTreeHostImpl* layerTreeHostImpl() const { return m_layerTreeHostImpl; } 74 LayerTreeHostImpl* layerTreeHostImpl() const { return m_layerTreeHostImpl; }
75 void setLayerTreeHostImpl(LayerTreeHostImpl* hostImpl);
76 75
77 scoped_ptr<SharedQuadState> createSharedQuadState() const; 76 scoped_ptr<SharedQuadState> createSharedQuadState() const;
78 // willDraw must be called before appendQuads. If willDraw is called, 77 // willDraw must be called before appendQuads. If willDraw is called,
79 // didDraw is guaranteed to be called before another willDraw or before 78 // didDraw is guaranteed to be called before another willDraw or before
80 // the layer is destroyed. To enforce this, any class that overrides 79 // the layer is destroyed. To enforce this, any class that overrides
81 // willDraw/didDraw must call the base class version. 80 // willDraw/didDraw must call the base class version.
82 virtual void willDraw(ResourceProvider*); 81 virtual void willDraw(ResourceProvider*);
83 virtual void appendQuads(QuadSink&, AppendQuadsData&) { } 82 virtual void appendQuads(QuadSink&, AppendQuadsData&) { }
84 virtual void didDraw(ResourceProvider*); 83 virtual void didDraw(ResourceProvider*);
85 84
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 ScrollbarLayerImpl* horizontalScrollbarLayer(); 268 ScrollbarLayerImpl* horizontalScrollbarLayer();
270 const ScrollbarLayerImpl* horizontalScrollbarLayer() const; 269 const ScrollbarLayerImpl* horizontalScrollbarLayer() const;
271 270
272 void setVerticalScrollbarLayer(ScrollbarLayerImpl*); 271 void setVerticalScrollbarLayer(ScrollbarLayerImpl*);
273 ScrollbarLayerImpl* verticalScrollbarLayer(); 272 ScrollbarLayerImpl* verticalScrollbarLayer();
274 const ScrollbarLayerImpl* verticalScrollbarLayer() const; 273 const ScrollbarLayerImpl* verticalScrollbarLayer() const;
275 274
276 gfx::Rect layerRectToContentRect(const gfx::RectF& layerRect) const; 275 gfx::Rect layerRectToContentRect(const gfx::RectF& layerRect) const;
277 276
278 protected: 277 protected:
279 explicit LayerImpl(int); 278 LayerImpl(LayerTreeHostImpl* hostImpl, int);
280 279
281 // Get the color and size of the layer's debug border. 280 // Get the color and size of the layer's debug border.
282 virtual void getDebugBorderProperties(SkColor*, float* width) const; 281 virtual void getDebugBorderProperties(SkColor*, float* width) const;
283 282
284 void appendDebugBorderQuad(QuadSink&, const SharedQuadState*, AppendQuadsDat a&) const; 283 void appendDebugBorderQuad(QuadSink&, const SharedQuadState*, AppendQuadsDat a&) const;
285 284
286 virtual void dumpLayerProperties(std::string*, int indent) const; 285 virtual void dumpLayerProperties(std::string*, int indent) const;
287 static std::string indentString(int indent); 286 static std::string indentString(int indent);
288 287
289 private: 288 private:
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
389 // Group of properties that need to be computed based on the layer tree 388 // Group of properties that need to be computed based on the layer tree
390 // hierarchy before layers can be drawn. 389 // hierarchy before layers can be drawn.
391 DrawProperties<LayerImpl, RenderSurfaceImpl> m_drawProperties; 390 DrawProperties<LayerImpl, RenderSurfaceImpl> m_drawProperties;
392 391
393 DISALLOW_COPY_AND_ASSIGN(LayerImpl); 392 DISALLOW_COPY_AND_ASSIGN(LayerImpl);
394 }; 393 };
395 394
396 } 395 }
397 396
398 #endif // CC_LAYER_IMPL_H_ 397 #endif // CC_LAYER_IMPL_H_
OLDNEW
« no previous file with comments | « cc/layer.cc ('k') | cc/layer_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698