| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 "config.h" | 5 #include "config.h" |
| 6 | 6 |
| 7 #include "CCRenderPassDrawQuad.h" | 7 #include "CCRenderPassDrawQuad.h" |
| 8 | 8 |
| 9 namespace WebCore { | 9 namespace WebCore { |
| 10 | 10 |
| 11 PassOwnPtr<CCRenderPassDrawQuad> CCRenderPassDrawQuad::create(const CCSharedQuad
State* sharedQuadState, const IntRect& quadRect, int renderPassId, bool isReplic
a, const CCResourceProvider::ResourceId maskResourceId, const IntRect& contentsC
hangedSinceLastFrame, float maskTexCoordScaleX, float maskTexCoordScaleY, float
maskTexCoordOffsetX, float maskTexCoordOffsetY) | 11 PassOwnPtr<CCRenderPassDrawQuad> CCRenderPassDrawQuad::create(const CCSharedQuad
State* sharedQuadState, const IntRect& quadRect, CCRenderPass::Id renderPassId,
bool isReplica, const CCResourceProvider::ResourceId maskResourceId, const IntRe
ct& contentsChangedSinceLastFrame, float maskTexCoordScaleX, float maskTexCoordS
caleY, float maskTexCoordOffsetX, float maskTexCoordOffsetY) |
| 12 { | 12 { |
| 13 return adoptPtr(new CCRenderPassDrawQuad(sharedQuadState, quadRect, renderPa
ssId, isReplica, maskResourceId, contentsChangedSinceLastFrame, maskTexCoordScal
eX, maskTexCoordScaleY, maskTexCoordOffsetX, maskTexCoordOffsetY)); | 13 return adoptPtr(new CCRenderPassDrawQuad(sharedQuadState, quadRect, renderPa
ssId, isReplica, maskResourceId, contentsChangedSinceLastFrame, maskTexCoordScal
eX, maskTexCoordScaleY, maskTexCoordOffsetX, maskTexCoordOffsetY)); |
| 14 } | 14 } |
| 15 | 15 |
| 16 CCRenderPassDrawQuad::CCRenderPassDrawQuad(const CCSharedQuadState* sharedQuadSt
ate, const IntRect& quadRect, int renderPassId, bool isReplica, CCResourceProvid
er::ResourceId maskResourceId, const IntRect& contentsChangedSinceLastFrame, flo
at maskTexCoordScaleX, float maskTexCoordScaleY, float maskTexCoordOffsetX, floa
t maskTexCoordOffsetY) | 16 CCRenderPassDrawQuad::CCRenderPassDrawQuad(const CCSharedQuadState* sharedQuadSt
ate, const IntRect& quadRect, CCRenderPass::Id renderPassId, bool isReplica, CCR
esourceProvider::ResourceId maskResourceId, const IntRect& contentsChangedSinceL
astFrame, float maskTexCoordScaleX, float maskTexCoordScaleY, float maskTexCoord
OffsetX, float maskTexCoordOffsetY) |
| 17 : CCDrawQuad(sharedQuadState, CCDrawQuad::RenderPass, quadRect) | 17 : CCDrawQuad(sharedQuadState, CCDrawQuad::RenderPass, quadRect) |
| 18 , m_renderPassId(renderPassId) | 18 , m_renderPassId(renderPassId) |
| 19 , m_isReplica(isReplica) | 19 , m_isReplica(isReplica) |
| 20 , m_maskResourceId(maskResourceId) | 20 , m_maskResourceId(maskResourceId) |
| 21 , m_contentsChangedSinceLastFrame(contentsChangedSinceLastFrame) | 21 , m_contentsChangedSinceLastFrame(contentsChangedSinceLastFrame) |
| 22 , m_maskTexCoordScaleX(maskTexCoordScaleX) | 22 , m_maskTexCoordScaleX(maskTexCoordScaleX) |
| 23 , m_maskTexCoordScaleY(maskTexCoordScaleY) | 23 , m_maskTexCoordScaleY(maskTexCoordScaleY) |
| 24 , m_maskTexCoordOffsetX(maskTexCoordOffsetX) | 24 , m_maskTexCoordOffsetX(maskTexCoordOffsetX) |
| 25 , m_maskTexCoordOffsetY(maskTexCoordOffsetY) | 25 , m_maskTexCoordOffsetY(maskTexCoordOffsetY) |
| 26 { | 26 { |
| 27 ASSERT(m_renderPassId > 0); | 27 ASSERT(m_renderPassId.layerId > 0); |
| 28 ASSERT(m_renderPassId.index >= 0); |
| 28 } | 29 } |
| 29 | 30 |
| 30 const CCRenderPassDrawQuad* CCRenderPassDrawQuad::materialCast(const CCDrawQuad*
quad) | 31 const CCRenderPassDrawQuad* CCRenderPassDrawQuad::materialCast(const CCDrawQuad*
quad) |
| 31 { | 32 { |
| 32 ASSERT(quad->material() == CCDrawQuad::RenderPass); | 33 ASSERT(quad->material() == CCDrawQuad::RenderPass); |
| 33 return static_cast<const CCRenderPassDrawQuad*>(quad); | 34 return static_cast<const CCRenderPassDrawQuad*>(quad); |
| 34 } | 35 } |
| 35 | 36 |
| 37 PassOwnPtr<CCRenderPassDrawQuad> CCRenderPassDrawQuad::copy(const CCSharedQuadSt
ate* copiedSharedQuadState, CCRenderPass::Id copiedRenderPassId) const |
| 38 { |
| 39 unsigned bytes = size(); |
| 40 ASSERT(bytes); |
| 41 |
| 42 OwnPtr<CCRenderPassDrawQuad> copyQuad(adoptPtr(reinterpret_cast<CCRenderPass
DrawQuad*>(new char[bytes]))); |
| 43 memcpy(copyQuad.get(), this, bytes); |
| 44 copyQuad->setSharedQuadState(copiedSharedQuadState); |
| 45 copyQuad->m_renderPassId = copiedRenderPassId; |
| 46 |
| 47 return copyQuad.release(); |
| 36 } | 48 } |
| 49 |
| 50 } |
| OLD | NEW |