summaryrefslogtreecommitdiffstats
path: root/cc/direct_renderer.cc
diff options
context:
space:
mode:
authordanakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-21 07:02:15 +0000
committerdanakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-21 07:02:15 +0000
commitf57bbc063aa387dbd7c929cacc8d55a960a28ec4 (patch)
treeefdd404c8ee8be1d32a92d4c1c1dfd8e65ba89a9 /cc/direct_renderer.cc
parent493227ba58e115567c5eab085250beec83e03038 (diff)
downloadchromium_src-f57bbc063aa387dbd7c929cacc8d55a960a28ec4.zip
chromium_src-f57bbc063aa387dbd7c929cacc8d55a960a28ec4.tar.gz
chromium_src-f57bbc063aa387dbd7c929cacc8d55a960a28ec4.tar.bz2
cc: Make RenderPass into a struct-like class.
This follows the same pattern as DrawQuad and SharedQuadState. The Create() method takes no parameters, allowing the IPC code to create an empty RenderPass. Then we have SetNew() and SetAll() methods to set the the properties of the RenderPass when creating a new one, or when recreating one via IPC, respectively. Covered by existing tests. BUG=152337 TBR=aelias Review URL: https://chromiumcodereview.appspot.com/11413106 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168998 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/direct_renderer.cc')
-rw-r--r--cc/direct_renderer.cc34
1 files changed, 17 insertions, 17 deletions
diff --git a/cc/direct_renderer.cc b/cc/direct_renderer.cc
index c0efca4..7e2e31e 100644
--- a/cc/direct_renderer.cc
+++ b/cc/direct_renderer.cc
@@ -95,7 +95,7 @@ gfx::Rect DirectRenderer::moveScissorToWindowSpace(const DrawingFrame& frame, gf
gfx::Rect scissorRectInCanvasSpace = gfx::ToEnclosingRect(scissorRect);
// The scissor coordinates must be supplied in viewport space so we need to offset
// by the relative position of the top left corner of the current render pass.
- gfx::Rect framebufferOutputRect = frame.currentRenderPass->outputRect();
+ gfx::Rect framebufferOutputRect = frame.currentRenderPass->output_rect;
scissorRectInCanvasSpace.set_x(scissorRectInCanvasSpace.x() - framebufferOutputRect.x());
if (frame.flippedY && !frame.currentTexture)
scissorRectInCanvasSpace.set_y(framebufferOutputRect.height() - (scissorRectInCanvasSpace.bottom() - framebufferOutputRect.y()));
@@ -118,7 +118,7 @@ void DirectRenderer::decideRenderPassAllocationsForFrame(const RenderPassList& r
{
base::hash_map<RenderPass::Id, const RenderPass*> renderPassesInFrame;
for (size_t i = 0; i < renderPassesInDrawOrder.size(); ++i)
- renderPassesInFrame.insert(std::pair<RenderPass::Id, const RenderPass*>(renderPassesInDrawOrder[i]->id(), renderPassesInDrawOrder[i]));
+ renderPassesInFrame.insert(std::pair<RenderPass::Id, const RenderPass*>(renderPassesInDrawOrder[i]->id, renderPassesInDrawOrder[i]));
std::vector<RenderPass::Id> passesToDelete;
ScopedPtrHashMap<RenderPass::Id, CachedResource>::const_iterator passIterator;
@@ -144,9 +144,9 @@ void DirectRenderer::decideRenderPassAllocationsForFrame(const RenderPassList& r
m_renderPassTextures.erase(passesToDelete[i]);
for (size_t i = 0; i < renderPassesInDrawOrder.size(); ++i) {
- if (!m_renderPassTextures.contains(renderPassesInDrawOrder[i]->id())) {
+ if (!m_renderPassTextures.contains(renderPassesInDrawOrder[i]->id)) {
scoped_ptr<CachedResource> texture = CachedResource::create(m_resourceProvider);
- m_renderPassTextures.set(renderPassesInDrawOrder[i]->id(), texture.Pass());
+ m_renderPassTextures.set(renderPassesInDrawOrder[i]->id, texture.Pass());
}
}
}
@@ -160,7 +160,7 @@ void DirectRenderer::drawFrame(const RenderPassList& renderPassesInDrawOrder, co
DrawingFrame frame;
frame.renderPassesById = &renderPassesById;
frame.rootRenderPass = rootRenderPass;
- frame.rootDamageRect = capabilities().usingPartialSwap ? rootRenderPass->damageRect() : rootRenderPass->outputRect();
+ frame.rootDamageRect = capabilities().usingPartialSwap ? rootRenderPass->damage_rect : rootRenderPass->output_rect;
frame.rootDamageRect.Intersect(gfx::Rect(gfx::Point(), viewportSize()));
beginDrawingFrame(frame);
@@ -175,9 +175,9 @@ void DirectRenderer::drawRenderPass(DrawingFrame& frame, const RenderPass* rende
if (!useRenderPass(frame, renderPass))
return;
- frame.scissorRectInRenderPassSpace = frame.currentRenderPass->outputRect();
- if (frame.rootDamageRect != frame.rootRenderPass->outputRect()) {
- WebTransformationMatrix inverseTransformToRoot = frame.currentRenderPass->transformToRootTarget().inverse();
+ frame.scissorRectInRenderPassSpace = frame.currentRenderPass->output_rect;
+ if (frame.rootDamageRect != frame.rootRenderPass->output_rect) {
+ WebTransformationMatrix inverseTransformToRoot = frame.currentRenderPass->transform_to_root_target.inverse();
gfx::RectF damageRectInRenderPassSpace = MathUtil::projectClippedRect(inverseTransformToRoot, frame.rootDamageRect);
frame.scissorRectInRenderPassSpace.Intersect(damageRectInRenderPassSpace);
}
@@ -185,18 +185,18 @@ void DirectRenderer::drawRenderPass(DrawingFrame& frame, const RenderPass* rende
setScissorTestRect(moveScissorToWindowSpace(frame, frame.scissorRectInRenderPassSpace));
clearFramebuffer(frame);
- const QuadList& quadList = renderPass->quadList();
+ const QuadList& quadList = renderPass->quad_list;
for (QuadList::constBackToFrontIterator it = quadList.backToFrontBegin(); it != quadList.backToFrontEnd(); ++it) {
- gfx::RectF quadScissorRect = gfx::IntersectRects(frame.scissorRectInRenderPassSpace, (*it)->clippedRectInTarget());
+ gfx::RectF quadScissorRect = gfx::IntersectRects(frame.scissorRectInRenderPassSpace, (*it)->clippedRectInTarget());
if (!quadScissorRect.IsEmpty()) {
setScissorTestRect(moveScissorToWindowSpace(frame, quadScissorRect));
drawQuad(frame, *it);
}
}
- CachedResource* texture = m_renderPassTextures.get(renderPass->id());
+ CachedResource* texture = m_renderPassTextures.get(renderPass->id);
if (texture)
- texture->setIsComplete(!renderPass->hasOcclusionFromOutsideTargetSurface());
+ texture->setIsComplete(!renderPass->has_occlusion_from_outside_target_surface);
}
bool DirectRenderer::useRenderPass(DrawingFrame& frame, const RenderPass* renderPass)
@@ -206,17 +206,17 @@ bool DirectRenderer::useRenderPass(DrawingFrame& frame, const RenderPass* render
if (renderPass == frame.rootRenderPass) {
bindFramebufferToOutputSurface(frame);
- initializeMatrices(frame, renderPass->outputRect(), flippedFramebuffer());
- setDrawViewportSize(renderPass->outputRect().size());
+ initializeMatrices(frame, renderPass->output_rect, flippedFramebuffer());
+ setDrawViewportSize(renderPass->output_rect.size());
return true;
}
- CachedResource* texture = m_renderPassTextures.get(renderPass->id());
+ CachedResource* texture = m_renderPassTextures.get(renderPass->id);
DCHECK(texture);
if (!texture->id() && !texture->Allocate(Renderer::ImplPool, renderPassTextureSize(renderPass), renderPassTextureFormat(renderPass), ResourceProvider::TextureUsageFramebuffer))
return false;
- return bindFramebufferToTexture(frame, texture, renderPass->outputRect());
+ return bindFramebufferToTexture(frame, texture, renderPass->output_rect);
}
bool DirectRenderer::haveCachedResourcesForRenderPassId(RenderPass::Id id) const
@@ -228,7 +228,7 @@ bool DirectRenderer::haveCachedResourcesForRenderPassId(RenderPass::Id id) const
// static
gfx::Size DirectRenderer::renderPassTextureSize(const RenderPass* pass)
{
- return pass->outputRect().size();
+ return pass->output_rect.size();
}
// static