| 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 #include "cc/gl_renderer.h" | 5 #include "cc/gl_renderer.h" |
| 6 | 6 |
| 7 #include "cc/compositor_frame_metadata.h" | 7 #include "cc/compositor_frame_metadata.h" |
| 8 #include "cc/draw_quad.h" | 8 #include "cc/draw_quad.h" |
| 9 #include "cc/prioritized_resource_manager.h" | 9 #include "cc/prioritized_resource_manager.h" |
| 10 #include "cc/resource_provider.h" | 10 #include "cc/resource_provider.h" |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 : m_hostImpl(&m_proxy) | 65 : m_hostImpl(&m_proxy) |
| 66 , m_setFullRootLayerDamageCount(0) | 66 , m_setFullRootLayerDamageCount(0) |
| 67 , m_lastCallWasSetVisibility(0) | 67 , m_lastCallWasSetVisibility(0) |
| 68 , m_rootLayer(LayerImpl::create(m_hostImpl.activeTree(), 1)) | 68 , m_rootLayer(LayerImpl::create(m_hostImpl.activeTree(), 1)) |
| 69 , m_memoryAllocationLimitBytes(PrioritizedResourceManager::defaultMemory
AllocationLimit()) | 69 , m_memoryAllocationLimitBytes(PrioritizedResourceManager::defaultMemory
AllocationLimit()) |
| 70 { | 70 { |
| 71 m_rootLayer->createRenderSurface(); | 71 m_rootLayer->createRenderSurface(); |
| 72 RenderPass::Id renderPassId = m_rootLayer->renderSurface()->renderPassId
(); | 72 RenderPass::Id renderPassId = m_rootLayer->renderSurface()->renderPassId
(); |
| 73 scoped_ptr<RenderPass> rootRenderPass = RenderPass::Create(); | 73 scoped_ptr<RenderPass> rootRenderPass = RenderPass::Create(); |
| 74 rootRenderPass->SetNew(renderPassId, gfx::Rect(), gfx::Rect(), gfx::Tran
sform()); | 74 rootRenderPass->SetNew(renderPassId, gfx::Rect(), gfx::Rect(), gfx::Tran
sform()); |
| 75 m_renderPassesInDrawOrder.append(rootRenderPass.Pass()); | 75 m_renderPassesInDrawOrder.push_back(rootRenderPass.Pass()); |
| 76 } | 76 } |
| 77 | 77 |
| 78 // RendererClient methods. | 78 // RendererClient methods. |
| 79 virtual const gfx::Size& deviceViewportSize() const OVERRIDE { static gfx::S
ize fakeSize(1, 1); return fakeSize; } | 79 virtual const gfx::Size& deviceViewportSize() const OVERRIDE { static gfx::S
ize fakeSize(1, 1); return fakeSize; } |
| 80 virtual const LayerTreeSettings& settings() const OVERRIDE { static LayerTre
eSettings fakeSettings; return fakeSettings; } | 80 virtual const LayerTreeSettings& settings() const OVERRIDE { static LayerTre
eSettings fakeSettings; return fakeSettings; } |
| 81 virtual void didLoseOutputSurface() OVERRIDE { } | 81 virtual void didLoseOutputSurface() OVERRIDE { } |
| 82 virtual void onSwapBuffersComplete() OVERRIDE { } | 82 virtual void onSwapBuffersComplete() OVERRIDE { } |
| 83 virtual void setFullRootLayerDamage() OVERRIDE { m_setFullRootLayerDamageCou
nt++; } | 83 virtual void setFullRootLayerDamage() OVERRIDE { m_setFullRootLayerDamageCou
nt++; } |
| 84 virtual void setManagedMemoryPolicy(const ManagedMemoryPolicy& policy) OVERR
IDE { m_memoryAllocationLimitBytes = policy.bytesLimitWhenVisible; } | 84 virtual void setManagedMemoryPolicy(const ManagedMemoryPolicy& policy) OVERR
IDE { m_memoryAllocationLimitBytes = policy.bytesLimitWhenVisible; } |
| 85 virtual void enforceManagedMemoryPolicy(const ManagedMemoryPolicy& policy) O
VERRIDE { if (m_lastCallWasSetVisibility) *m_lastCallWasSetVisibility = false; } | 85 virtual void enforceManagedMemoryPolicy(const ManagedMemoryPolicy& policy) O
VERRIDE { if (m_lastCallWasSetVisibility) *m_lastCallWasSetVisibility = false; } |
| 86 virtual bool hasImplThread() const OVERRIDE { return false; } | 86 virtual bool hasImplThread() const OVERRIDE { return false; } |
| 87 virtual bool shouldClearRootRenderPass() const OVERRIDE { return true; } | 87 virtual bool shouldClearRootRenderPass() const OVERRIDE { return true; } |
| 88 virtual CompositorFrameMetadata makeCompositorFrameMetadata() const | 88 virtual CompositorFrameMetadata makeCompositorFrameMetadata() const |
| 89 OVERRIDE { return CompositorFrameMetadata(); } | 89 OVERRIDE { return CompositorFrameMetadata(); } |
| 90 | 90 |
| 91 // Methods added for test. | 91 // Methods added for test. |
| 92 int setFullRootLayerDamageCount() const { return m_setFullRootLayerDamageCou
nt; } | 92 int setFullRootLayerDamageCount() const { return m_setFullRootLayerDamageCou
nt; } |
| 93 void setLastCallWasSetVisibilityPointer(bool* lastCallWasSetVisibility) { m_
lastCallWasSetVisibility = lastCallWasSetVisibility; } | 93 void setLastCallWasSetVisibilityPointer(bool* lastCallWasSetVisibility) { m_
lastCallWasSetVisibility = lastCallWasSetVisibility; } |
| 94 | 94 |
| 95 RenderPass* rootRenderPass() { return m_renderPassesInDrawOrder.last(); } | 95 RenderPass* rootRenderPass() { return m_renderPassesInDrawOrder.back(); } |
| 96 RenderPassList& renderPassesInDrawOrder() { return m_renderPassesInDrawOrder
; } | 96 RenderPassList& renderPassesInDrawOrder() { return m_renderPassesInDrawOrder
; } |
| 97 | 97 |
| 98 size_t memoryAllocationLimitBytes() const { return m_memoryAllocationLimitBy
tes; } | 98 size_t memoryAllocationLimitBytes() const { return m_memoryAllocationLimitBy
tes; } |
| 99 | 99 |
| 100 private: | 100 private: |
| 101 FakeImplProxy m_proxy; | 101 FakeImplProxy m_proxy; |
| 102 FakeLayerTreeHostImpl m_hostImpl; | 102 FakeLayerTreeHostImpl m_hostImpl; |
| 103 int m_setFullRootLayerDamageCount; | 103 int m_setFullRootLayerDamageCount; |
| 104 bool* m_lastCallWasSetVisibility; | 104 bool* m_lastCallWasSetVisibility; |
| 105 scoped_ptr<LayerImpl> m_rootLayer; | 105 scoped_ptr<LayerImpl> m_rootLayer; |
| (...skipping 527 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 633 | 633 |
| 634 renderer.decideRenderPassAllocationsForFrame(mockClient.renderPassesInDrawOr
der()); | 634 renderer.decideRenderPassAllocationsForFrame(mockClient.renderPassesInDrawOr
der()); |
| 635 renderer.drawFrame(mockClient.renderPassesInDrawOrder()); | 635 renderer.drawFrame(mockClient.renderPassesInDrawOrder()); |
| 636 | 636 |
| 637 // In multiple render passes all but the root pass should clear the framebuf
fer. | 637 // In multiple render passes all but the root pass should clear the framebuf
fer. |
| 638 Mock::VerifyAndClearExpectations(&mockContext); | 638 Mock::VerifyAndClearExpectations(&mockContext); |
| 639 } | 639 } |
| 640 | 640 |
| 641 } // namespace | 641 } // namespace |
| 642 } // namespace cc | 642 } // namespace cc |
| OLD | NEW |