Index: cc/CCLayerTreeHostImplTest.cpp |
diff --git a/cc/CCLayerTreeHostImplTest.cpp b/cc/CCLayerTreeHostImplTest.cpp |
index 77ac46eac02e47593be3bb1570a831fddc3d7d42..0af69ba06cf35df16df18ecbf49ccd09806f4073 100644 |
--- a/cc/CCLayerTreeHostImplTest.cpp |
+++ b/cc/CCLayerTreeHostImplTest.cpp |
@@ -2530,18 +2530,18 @@ protected: |
} |
}; |
-static inline PassOwnPtr<CCRenderPass> createRenderPassWithResource(CCResourceProvider* provider) |
+static inline scoped_ptr<CCRenderPass> createRenderPassWithResource(CCResourceProvider* provider) |
{ |
CCResourceProvider::ResourceId resourceId = provider->createResource(0, IntSize(1, 1), GraphicsContext3D::RGBA, CCResourceProvider::TextureUsageAny); |
- OwnPtr<CCRenderPass> pass = CCRenderPass::create(CCRenderPass::Id(1, 1), IntRect(0, 0, 1, 1), WebTransformationMatrix()); |
+ scoped_ptr<CCRenderPass> pass = CCRenderPass::create(CCRenderPass::Id(1, 1), IntRect(0, 0, 1, 1), WebTransformationMatrix()); |
OwnPtr<CCSharedQuadState> sharedState = CCSharedQuadState::create(WebTransformationMatrix(), IntRect(0, 0, 1, 1), IntRect(0, 0, 1, 1), 1, false); |
OwnPtr<CCTextureDrawQuad> quad = CCTextureDrawQuad::create(sharedState.get(), IntRect(0, 0, 1, 1), resourceId, false, FloatRect(0, 0, 1, 1), false); |
static_cast<CCTestRenderPass*>(pass.get())->appendSharedQuadState(sharedState.release()); |
static_cast<CCTestRenderPass*>(pass.get())->appendQuad(quad.release()); |
- return pass.release(); |
+ return pass.Pass(); |
} |
TEST_F(CCLayerTreeHostImplTest, dontUseOldResourcesAfterLostContext) |
@@ -2642,7 +2642,7 @@ TEST_F(CCLayerTreeHostImplTest, dontUseOldResourcesAfterLostContext) |
delegatedRendererLayer->setContentBounds(IntSize(10, 10)); |
delegatedRendererLayer->setDrawsContent(true); |
delegatedRendererLayer->setLayerTreeHostImpl(m_hostImpl.get()); |
- OwnPtrVector<CCRenderPass> passList; |
+ ScopedPtrVector<CCRenderPass> passList; |
passList.append(createRenderPassWithResource(m_hostImpl->resourceProvider())); |
delegatedRendererLayer->setRenderPasses(passList); |
EXPECT_TRUE(passList.isEmpty()); |
@@ -3923,36 +3923,8 @@ TEST_F(CCLayerTreeHostImplTest, releaseContentsTextureShouldTriggerCommit) |
EXPECT_TRUE(m_didRequestCommit); |
} |
-struct RenderPassCacheEntry { |
- mutable OwnPtr<CCRenderPass> renderPassPtr; |
- CCRenderPass* renderPass; |
- |
- RenderPassCacheEntry(PassOwnPtr<CCRenderPass> r) |
- : renderPassPtr(r), |
- renderPass(renderPassPtr.get()) |
- { |
- } |
- |
- RenderPassCacheEntry() |
- { |
- } |
- |
- RenderPassCacheEntry(const RenderPassCacheEntry& entry) |
- : renderPassPtr(entry.renderPassPtr.release()), |
- renderPass(entry.renderPass) |
- { |
- } |
- |
- RenderPassCacheEntry& operator=(const RenderPassCacheEntry& entry) |
- { |
- renderPassPtr = entry.renderPassPtr.release(); |
- renderPass = entry.renderPass; |
- return *this; |
- } |
-}; |
- |
struct RenderPassRemovalTestData : public CCLayerTreeHostImpl::FrameData { |
- std::map<CCRenderPass::Id, RenderPassCacheEntry> renderPassCache; |
+ ScopedPtrHashMap<CCRenderPass::Id, CCRenderPass> renderPassCache; |
OwnPtr<CCSharedQuadState> sharedQuadState; |
}; |
@@ -3968,9 +3940,9 @@ public: |
} |
void clearCachedTextures() { m_textures.clear(); } |
- void setHaveCachedResourcesForRenderPassId(CCRenderPass::Id id) { m_textures.add(id); } |
+ void setHaveCachedResourcesForRenderPassId(CCRenderPass::Id id) { m_textures.insert(id); } |
- virtual bool haveCachedResourcesForRenderPassId(CCRenderPass::Id id) const OVERRIDE { return m_textures.contains(id); } |
+ virtual bool haveCachedResourcesForRenderPassId(CCRenderPass::Id id) const OVERRIDE { return m_textures.count(id); } |
// CCRendererClient implementation. |
virtual const IntSize& deviceViewportSize() const OVERRIDE { return m_viewportSize; } |
@@ -3987,7 +3959,7 @@ protected: |
private: |
CCLayerTreeSettings m_settings; |
IntSize m_viewportSize; |
- HashSet<CCRenderPass::Id> m_textures; |
+ base::hash_set<CCRenderPass::Id> m_textures; |
}; |
static void configureRenderPassTestData(const char* testScript, RenderPassRemovalTestData& testData, CCTestRenderer* renderer) |
@@ -4001,8 +3973,7 @@ static void configureRenderPassTestData(const char* testScript, RenderPassRemova |
// Pre-create root pass |
CCRenderPass::Id rootRenderPassId = CCRenderPass::Id(testScript[0], testScript[1]); |
- OwnPtr<CCRenderPass> rootRenderPass = CCRenderPass::create(rootRenderPassId, IntRect(), WebTransformationMatrix()); |
- testData.renderPassCache.insert(std::pair<CCRenderPass::Id, RenderPassCacheEntry>(rootRenderPassId, RenderPassCacheEntry(rootRenderPass.release()))); |
+ testData.renderPassCache.add(rootRenderPassId, CCRenderPass::create(rootRenderPassId, IntRect(), WebTransformationMatrix())); |
while (*currentChar) { |
int layerId = *currentChar; |
currentChar++; |
@@ -4012,13 +3983,11 @@ static void configureRenderPassTestData(const char* testScript, RenderPassRemova |
CCRenderPass::Id renderPassId = CCRenderPass::Id(layerId, index); |
- OwnPtr<CCRenderPass> renderPass; |
- |
bool isReplica = false; |
- if (!testData.renderPassCache[renderPassId].renderPassPtr.get()) |
+ if (!testData.renderPassCache.contains(renderPassId)) |
isReplica = true; |
- renderPass = testData.renderPassCache[renderPassId].renderPassPtr.release(); |
+ scoped_ptr<CCRenderPass> renderPass = testData.renderPassCache.take(renderPassId); |
// Cycle through quad data and create all quads |
while (*currentChar && *currentChar != '\n') { |
@@ -4061,8 +4030,7 @@ static void configureRenderPassTestData(const char* testScript, RenderPassRemova |
if (hasTexture) |
renderer->setHaveCachedResourcesForRenderPassId(newRenderPassId); |
- OwnPtr<CCRenderPass> renderPass = CCTestRenderPass::create(newRenderPassId, IntRect(), WebTransformationMatrix()); |
- testData.renderPassCache.insert(std::pair<CCRenderPass::Id, RenderPassCacheEntry>(newRenderPassId, RenderPassCacheEntry(renderPass.release()))); |
+ testData.renderPassCache.add(newRenderPassId, CCTestRenderPass::create(newRenderPassId, IntRect(), WebTransformationMatrix())); |
} |
IntRect quadRect = IntRect(0, 0, 1, 1); |
@@ -4072,7 +4040,7 @@ static void configureRenderPassTestData(const char* testScript, RenderPassRemova |
} |
} |
testData.renderPasses.insert(0, renderPass.get()); |
- testData.renderPassesById.add(renderPassId, renderPass.release()); |
+ testData.renderPassesById.add(renderPassId, renderPass.Pass()); |
if (*currentChar) |
currentChar++; |
} |