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

Unified Diff: cc/CCDirectRenderer.cpp

Issue 10984053: cc: Use ui/gfx geometry types for the CCRenderPass and CCDrawQuad classes. (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/CCDirectRenderer.h ('k') | cc/CCDrawQuad.h » ('j') | cc/math/clamp.h » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/CCDirectRenderer.cpp
diff --git a/cc/CCDirectRenderer.cpp b/cc/CCDirectRenderer.cpp
index 1e9df5d8ae3c602969552c45d3adb899975ad2c6..8106be93de2d6bb82d95d7419b64c26b97ef6ea7 100644
--- a/cc/CCDirectRenderer.cpp
+++ b/cc/CCDirectRenderer.cpp
@@ -69,7 +69,7 @@ FloatRect CCDirectRenderer::quadVertexRect()
}
// static
-void CCDirectRenderer::quadRectTransform(WebKit::WebTransformationMatrix* quadRectTransform, const WebKit::WebTransformationMatrix& quadTransform, const FloatRect& quadRect)
+void CCDirectRenderer::quadRectTransform(WebKit::WebTransformationMatrix* quadRectTransform, const WebKit::WebTransformationMatrix& quadTransform, const ccmath::FloatRect& quadRect)
{
*quadRectTransform = quadTransform;
quadRectTransform->translate(0.5 * quadRect.width() + quadRect.x(), 0.5 * quadRect.height() + quadRect.y());
@@ -77,28 +77,28 @@ void CCDirectRenderer::quadRectTransform(WebKit::WebTransformationMatrix* quadRe
}
// static
-void CCDirectRenderer::initializeMatrices(DrawingFrame& frame, const IntRect& drawRect, bool flipY)
+void CCDirectRenderer::initializeMatrices(DrawingFrame& frame, const ccmath::IntRect& drawRect, bool flipY)
{
if (flipY)
- frame.projectionMatrix = orthoProjectionMatrix(drawRect.x(), drawRect.maxX(), drawRect.maxY(), drawRect.y());
+ frame.projectionMatrix = orthoProjectionMatrix(drawRect.x(), drawRect.max_x(), drawRect.max_y(), drawRect.y());
else
- frame.projectionMatrix = orthoProjectionMatrix(drawRect.x(), drawRect.maxX(), drawRect.y(), drawRect.maxY());
+ frame.projectionMatrix = orthoProjectionMatrix(drawRect.x(), drawRect.max_x(), drawRect.y(), drawRect.max_y());
frame.windowMatrix = windowMatrix(0, 0, drawRect.width(), drawRect.height());
frame.flippedY = flipY;
}
// static
-IntRect CCDirectRenderer::moveScissorToWindowSpace(const DrawingFrame& frame, FloatRect scissorRect)
+ccmath::IntRect CCDirectRenderer::moveScissorToWindowSpace(const DrawingFrame& frame, ccmath::FloatRect scissorRect)
{
- IntRect scissorRectInCanvasSpace = enclosingIntRect(scissorRect);
+ ccmath::IntRect scissorRectInCanvasSpace = scissorRect.EnclosingIntRect();
// 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.
- IntRect framebufferOutputRect = frame.currentRenderPass->outputRect();
- scissorRectInCanvasSpace.setX(scissorRectInCanvasSpace.x() - framebufferOutputRect.x());
+ ccmath::IntRect framebufferOutputRect = frame.currentRenderPass->outputRect();
+ scissorRectInCanvasSpace.set_x(scissorRectInCanvasSpace.x() - framebufferOutputRect.x());
if (frame.flippedY && !frame.currentTexture)
- scissorRectInCanvasSpace.setY(framebufferOutputRect.height() - (scissorRectInCanvasSpace.maxY() - framebufferOutputRect.y()));
+ scissorRectInCanvasSpace.set_y(framebufferOutputRect.height() - (scissorRectInCanvasSpace.max_y() - framebufferOutputRect.y()));
else
- scissorRectInCanvasSpace.setY(scissorRectInCanvasSpace.y() - framebufferOutputRect.y());
+ scissorRectInCanvasSpace.set_y(scissorRectInCanvasSpace.y() - framebufferOutputRect.y());
return scissorRectInCanvasSpace;
}
@@ -169,7 +169,7 @@ void CCDirectRenderer::drawFrame(const CCRenderPassList& renderPassesInDrawOrder
frame.renderPassesById = &renderPassesById;
frame.rootRenderPass = rootRenderPass;
frame.rootDamageRect = capabilities().usingPartialSwap ? rootRenderPass->damageRect() : rootRenderPass->outputRect();
- frame.rootDamageRect.intersect(IntRect(IntPoint::zero(), viewportSize()));
+ frame.rootDamageRect.Intersect(ccmath::IntRect(ccmath::IntPoint(), viewportSize()));
beginDrawingFrame(frame);
for (size_t i = 0; i < renderPassesInDrawOrder.size(); ++i)
@@ -185,7 +185,7 @@ void CCDirectRenderer::drawRenderPass(DrawingFrame& frame, const CCRenderPass* r
frame.scissorRectInRenderPassSpace = frame.currentRenderPass->outputRect();
if (frame.rootDamageRect != frame.rootRenderPass->outputRect()) {
WebTransformationMatrix inverseTransformToRoot = frame.currentRenderPass->transformToRootTarget().inverse();
- frame.scissorRectInRenderPassSpace.intersect(CCMathUtil::projectClippedRect(inverseTransformToRoot, frame.rootDamageRect));
+ frame.scissorRectInRenderPassSpace.Intersect(CCMathUtil::projectClippedRect(inverseTransformToRoot, cc::FloatRect(frame.rootDamageRect)));
}
enableScissorTestRect(moveScissorToWindowSpace(frame, frame.scissorRectInRenderPassSpace));
@@ -193,9 +193,9 @@ void CCDirectRenderer::drawRenderPass(DrawingFrame& frame, const CCRenderPass* r
const CCQuadList& quadList = renderPass->quadList();
for (CCQuadList::constBackToFrontIterator it = quadList.backToFrontBegin(); it != quadList.backToFrontEnd(); ++it) {
- FloatRect quadScissorRect = frame.scissorRectInRenderPassSpace;
- quadScissorRect.intersect((*it)->clippedRectInTarget());
- if (!quadScissorRect.isEmpty()) {
+ ccmath::FloatRect quadScissorRect = frame.scissorRectInRenderPassSpace;
+ quadScissorRect.Intersect((*it)->clippedRectInTarget());
+ if (!quadScissorRect.IsEmpty()) {
enableScissorTestRect(moveScissorToWindowSpace(frame, quadScissorRect));
drawQuad(frame, *it);
}
@@ -235,7 +235,7 @@ bool CCDirectRenderer::haveCachedResourcesForRenderPassId(CCRenderPass::Id id) c
// static
IntSize CCDirectRenderer::renderPassTextureSize(const CCRenderPass* pass)
{
- return pass->outputRect().size();
+ return cc::IntSize(pass->outputRect().size());
}
// static
« no previous file with comments | « cc/CCDirectRenderer.h ('k') | cc/CCDrawQuad.h » ('j') | cc/math/clamp.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698