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

Unified Diff: cc/CCLayerTreeHostImplTest.cpp

Issue 10979010: Remove WTF HashMap and PassOwnPtr dependencies for CCRenderPass (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/CCLayerTreeHostImpl.cpp ('k') | cc/CCRenderPass.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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++;
}
« no previous file with comments | « cc/CCLayerTreeHostImpl.cpp ('k') | cc/CCRenderPass.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698