OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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 CCDelegatedRendererLayerImpl_h | 5 #ifndef CCDelegatedRendererLayerImpl_h |
6 #define CCDelegatedRendererLayerImpl_h | 6 #define CCDelegatedRendererLayerImpl_h |
7 | 7 |
8 #include "CCLayerImpl.h" | 8 #include "CCLayerImpl.h" |
| 9 #include "cc/scoped_ptr_vector.h" |
9 | 10 |
10 namespace cc { | 11 namespace cc { |
11 | 12 |
12 class CCDelegatedRendererLayerImpl : public CCLayerImpl { | 13 class CCDelegatedRendererLayerImpl : public CCLayerImpl { |
13 public: | 14 public: |
14 static PassOwnPtr<CCDelegatedRendererLayerImpl> create(int id) { return adop
tPtr(new CCDelegatedRendererLayerImpl(id)); } | 15 static PassOwnPtr<CCDelegatedRendererLayerImpl> create(int id) { return adop
tPtr(new CCDelegatedRendererLayerImpl(id)); } |
15 virtual ~CCDelegatedRendererLayerImpl(); | 16 virtual ~CCDelegatedRendererLayerImpl(); |
16 | 17 |
17 virtual bool descendantDrawsContent() OVERRIDE; | 18 virtual bool descendantDrawsContent() OVERRIDE; |
18 virtual bool hasContributingDelegatedRenderPasses() const OVERRIDE; | 19 virtual bool hasContributingDelegatedRenderPasses() const OVERRIDE; |
19 | 20 |
20 // This gives ownership of the RenderPasses to the layer. | 21 // This gives ownership of the RenderPasses to the layer. |
21 void setRenderPasses(OwnPtrVector<CCRenderPass>&); | 22 void setRenderPasses(ScopedPtrVector<CCRenderPass>&); |
22 void clearRenderPasses(); | 23 void clearRenderPasses(); |
23 | 24 |
24 virtual void didLoseContext() OVERRIDE; | 25 virtual void didLoseContext() OVERRIDE; |
25 | 26 |
26 virtual CCRenderPass::Id firstContributingRenderPassId() const OVERRIDE; | 27 virtual CCRenderPass::Id firstContributingRenderPassId() const OVERRIDE; |
27 virtual CCRenderPass::Id nextContributingRenderPassId(CCRenderPass::Id) cons
t OVERRIDE; | 28 virtual CCRenderPass::Id nextContributingRenderPassId(CCRenderPass::Id) cons
t OVERRIDE; |
28 | 29 |
29 void appendContributingRenderPasses(CCRenderPassSink&); | 30 void appendContributingRenderPasses(CCRenderPassSink&); |
30 virtual void appendQuads(CCQuadSink&, CCAppendQuadsData&) OVERRIDE; | 31 virtual void appendQuads(CCQuadSink&, CCAppendQuadsData&) OVERRIDE; |
31 | 32 |
32 private: | 33 private: |
33 explicit CCDelegatedRendererLayerImpl(int); | 34 explicit CCDelegatedRendererLayerImpl(int); |
34 | 35 |
35 CCRenderPass::Id convertDelegatedRenderPassId(CCRenderPass::Id delegatedRend
erPassId) const; | 36 CCRenderPass::Id convertDelegatedRenderPassId(CCRenderPass::Id delegatedRend
erPassId) const; |
36 | 37 |
37 void appendRenderPassQuads(CCQuadSink&, CCAppendQuadsData&, CCRenderPass* fr
omDelegatedRenderPass) const; | 38 void appendRenderPassQuads(CCQuadSink&, CCAppendQuadsData&, CCRenderPass* fr
omDelegatedRenderPass) const; |
38 | 39 |
39 PassOwnPtr<CCDrawQuad> createCopyOfQuad(const CCDrawQuad*); | 40 PassOwnPtr<CCDrawQuad> createCopyOfQuad(const CCDrawQuad*); |
40 | 41 |
41 virtual const char* layerTypeAsString() const OVERRIDE; | 42 virtual const char* layerTypeAsString() const OVERRIDE; |
42 | 43 |
43 OwnPtrVector<CCRenderPass> m_renderPassesInDrawOrder; | 44 ScopedPtrVector<CCRenderPass> m_renderPassesInDrawOrder; |
44 HashMap<CCRenderPass::Id, int> m_renderPassesIndexById; | 45 base::hash_map<CCRenderPass::Id, int> m_renderPassesIndexById; |
45 }; | 46 }; |
46 | 47 |
47 } | 48 } |
48 | 49 |
49 #endif // CCDelegatedRendererLayerImpl_h | 50 #endif // CCDelegatedRendererLayerImpl_h |
OLD | NEW |