OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "config.h" | |
6 | |
7 #include "CCRenderPassDrawQuad.h" | |
8 | |
9 namespace cc { | |
10 | |
11 scoped_ptr<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 { | |
13 return make_scoped_ptr(new CCRenderPassDrawQuad(sharedQuadState, quadRect, r
enderPassId, isReplica, maskResourceId, contentsChangedSinceLastFrame, maskTexCo
ordScaleX, maskTexCoordScaleY, maskTexCoordOffsetX, maskTexCoordOffsetY)); | |
14 } | |
15 | |
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) | |
18 , m_renderPassId(renderPassId) | |
19 , m_isReplica(isReplica) | |
20 , m_maskResourceId(maskResourceId) | |
21 , m_contentsChangedSinceLastFrame(contentsChangedSinceLastFrame) | |
22 , m_maskTexCoordScaleX(maskTexCoordScaleX) | |
23 , m_maskTexCoordScaleY(maskTexCoordScaleY) | |
24 , m_maskTexCoordOffsetX(maskTexCoordOffsetX) | |
25 , m_maskTexCoordOffsetY(maskTexCoordOffsetY) | |
26 { | |
27 ASSERT(m_renderPassId.layerId > 0); | |
28 ASSERT(m_renderPassId.index >= 0); | |
29 } | |
30 | |
31 const CCRenderPassDrawQuad* CCRenderPassDrawQuad::materialCast(const CCDrawQuad*
quad) | |
32 { | |
33 ASSERT(quad->material() == CCDrawQuad::RenderPass); | |
34 return static_cast<const CCRenderPassDrawQuad*>(quad); | |
35 } | |
36 | |
37 scoped_ptr<CCRenderPassDrawQuad> CCRenderPassDrawQuad::copy(const CCSharedQuadSt
ate* copiedSharedQuadState, CCRenderPass::Id copiedRenderPassId) const | |
38 { | |
39 unsigned bytes = size(); | |
40 ASSERT(bytes); | |
41 | |
42 scoped_ptr<CCRenderPassDrawQuad> copyQuad(reinterpret_cast<CCRenderPassDrawQ
uad*>(new char[bytes])); | |
43 memcpy(copyQuad.get(), this, bytes); | |
44 copyQuad->setSharedQuadState(copiedSharedQuadState); | |
45 copyQuad->m_renderPassId = copiedRenderPassId; | |
46 | |
47 return copyQuad.Pass(); | |
48 } | |
49 | |
50 } // namespace cc | |
OLD | NEW |