| 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 #ifndef CC_RENDER_PASS_DRAW_QUAD_H_ | 5 #ifndef CC_RENDER_PASS_DRAW_QUAD_H_ |
| 6 #define CC_RENDER_PASS_DRAW_QUAD_H_ | 6 #define CC_RENDER_PASS_DRAW_QUAD_H_ |
| 7 | 7 |
| 8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "cc/cc_export.h" | 10 #include "cc/cc_export.h" |
| 11 #include "cc/draw_quad.h" | 11 #include "cc/draw_quad.h" |
| 12 #include "cc/render_pass.h" | 12 #include "cc/render_pass.h" |
| 13 #include "cc/resource_provider.h" | 13 #include "cc/resource_provider.h" |
| 14 | 14 |
| 15 namespace cc { | 15 namespace cc { |
| 16 | 16 |
| 17 class CC_EXPORT RenderPassDrawQuad : public DrawQuad { | 17 class CC_EXPORT RenderPassDrawQuad : public DrawQuad { |
| 18 public: | 18 public: |
| 19 static scoped_ptr<RenderPassDrawQuad> create(const SharedQuadState*, const g
fx::Rect&, RenderPass::Id renderPassId, bool isReplica, ResourceProvider::Resour
ceId maskResourceId, const gfx::Rect& contentsChangedSinceLastFrame, float maskT
exCoordScaleX, float maskTexCoordScaleY, float maskTexCoordOffsetX, float maskTe
xCoordOffsetY); | 19 static scoped_ptr<RenderPassDrawQuad> Create(); |
| 20 | 20 |
| 21 RenderPass::Id renderPassId() const { return m_renderPassId; } | 21 void SetNew(const SharedQuadState* shared_quad_state, |
| 22 bool isReplica() const { return m_isReplica; } | 22 gfx::Rect rect, |
| 23 ResourceProvider::ResourceId maskResourceId() const { return m_maskResourceI
d; } | 23 RenderPass::Id render_pass_id, |
| 24 const gfx::Rect& contentsChangedSinceLastFrame() const { return m_contentsCh
angedSinceLastFrame; } | 24 bool is_replica, |
| 25 ResourceProvider::ResourceId mask_resource_id, |
| 26 gfx::Rect contents_changed_since_last_frame, |
| 27 float mask_tex_coord_scale_x, |
| 28 float mask_tex_coord_scale_y, |
| 29 float mask_tex_coord_offset_x, |
| 30 float mask_tex_coord_offset_y); |
| 25 | 31 |
| 26 static const RenderPassDrawQuad* materialCast(const DrawQuad*); | 32 void SetAll(const SharedQuadState* shared_quad_state, |
| 27 float maskTexCoordScaleX() const { return m_maskTexCoordScaleX; } | 33 gfx::Rect rect, |
| 28 float maskTexCoordScaleY() const { return m_maskTexCoordScaleY; } | 34 gfx::Rect opaque_rect, |
| 29 float maskTexCoordOffsetX() const { return m_maskTexCoordOffsetX; } | 35 gfx::Rect visible_rect, |
| 30 float maskTexCoordOffsetY() const { return m_maskTexCoordOffsetY; } | 36 bool needs_blending, |
| 37 RenderPass::Id render_pass_id, |
| 38 bool is_replica, |
| 39 ResourceProvider::ResourceId mask_resource_id, |
| 40 gfx::Rect contents_changed_since_last_frame, |
| 41 float mask_tex_coord_scale_x, |
| 42 float mask_tex_coord_scale_y, |
| 43 float mask_tex_coord_offset_x, |
| 44 float mask_tex_coord_offset_y); |
| 31 | 45 |
| 32 scoped_ptr<RenderPassDrawQuad> copy(const SharedQuadState* copiedSharedQuadS
tate, RenderPass::Id copiedRenderPassId) const; | 46 scoped_ptr<RenderPassDrawQuad> Copy( |
| 47 const SharedQuadState* copied_shared_quad_state, |
| 48 RenderPass::Id copied_render_pass_id) const; |
| 33 | 49 |
| 50 RenderPass::Id render_pass_id; |
| 51 bool is_replica; |
| 52 ResourceProvider::ResourceId mask_resource_id; |
| 53 gfx::Rect contents_changed_since_last_frame; |
| 54 // TODO(danakj): Make these a tex_coord_rect like TileDrawQuad. |
| 55 float mask_tex_coord_scale_x; |
| 56 float mask_tex_coord_scale_y; |
| 57 float mask_tex_coord_offset_x; |
| 58 float mask_tex_coord_offset_y; |
| 59 |
| 60 static const RenderPassDrawQuad* MaterialCast(const DrawQuad*); |
| 34 private: | 61 private: |
| 35 RenderPassDrawQuad(const SharedQuadState*, const gfx::Rect&, RenderPass::Id
renderPassId, bool isReplica, ResourceProvider::ResourceId maskResourceId, const
gfx::Rect& contentsChangedSinceLastFrame, float maskTexCoordScaleX, float maskT
exCoordScaleY, float maskTexCoordOffsetX, float maskTexCoordOffsetY); | 62 RenderPassDrawQuad(); |
| 36 | |
| 37 RenderPass::Id m_renderPassId; | |
| 38 bool m_isReplica; | |
| 39 ResourceProvider::ResourceId m_maskResourceId; | |
| 40 gfx::Rect m_contentsChangedSinceLastFrame; | |
| 41 float m_maskTexCoordScaleX; | |
| 42 float m_maskTexCoordScaleY; | |
| 43 float m_maskTexCoordOffsetX; | |
| 44 float m_maskTexCoordOffsetY; | |
| 45 }; | 63 }; |
| 46 | 64 |
| 47 } | 65 } |
| 48 | 66 |
| 49 #endif // CC_RENDER_PASS_DRAW_QUAD_H_ | 67 #endif // CC_RENDER_PASS_DRAW_QUAD_H_ |
| OLD | NEW |