OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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 "cc/io_surface_draw_quad.h" | 5 #include "cc/io_surface_draw_quad.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 | 8 |
9 namespace cc { | 9 namespace cc { |
10 | 10 |
11 scoped_ptr<IOSurfaceDrawQuad> IOSurfaceDrawQuad::create(const SharedQuadState* s
haredQuadState, const gfx::Rect& quadRect, const gfx::Rect& opaqueRect, const gf
x::Size& ioSurfaceSize, unsigned ioSurfaceTextureId, Orientation orientation) | 11 IOSurfaceDrawQuad::IOSurfaceDrawQuad() |
12 { | 12 : io_surface_texture_id(0), |
13 return make_scoped_ptr(new IOSurfaceDrawQuad(sharedQuadState, quadRect, opaq
ueRect, ioSurfaceSize, ioSurfaceTextureId, orientation)); | 13 orientation(FLIPPED) { |
14 } | 14 } |
15 | 15 |
16 IOSurfaceDrawQuad::IOSurfaceDrawQuad(const SharedQuadState* sharedQuadState, con
st gfx::Rect& quadRect, const gfx::Rect& opaqueRect, const gfx::Size& ioSurfaceS
ize, unsigned ioSurfaceTextureId, Orientation orientation) | 16 scoped_ptr<IOSurfaceDrawQuad> IOSurfaceDrawQuad::Create() { |
17 : m_ioSurfaceSize(ioSurfaceSize) | 17 return make_scoped_ptr(new IOSurfaceDrawQuad); |
18 , m_ioSurfaceTextureId(ioSurfaceTextureId) | |
19 , m_orientation(orientation) | |
20 { | |
21 gfx::Rect visibleRect = quadRect; | |
22 bool needsBlending = false; | |
23 DrawQuad::SetAll(sharedQuadState, DrawQuad::IO_SURFACE_CONTENT, quadRect, op
aqueRect, visibleRect, needsBlending); | |
24 } | 18 } |
25 | 19 |
26 const IOSurfaceDrawQuad* IOSurfaceDrawQuad::materialCast(const DrawQuad* quad) | 20 void IOSurfaceDrawQuad::SetNew(const SharedQuadState* shared_quad_state, |
27 { | 21 gfx::Rect rect, |
28 DCHECK(quad->material == DrawQuad::IO_SURFACE_CONTENT); | 22 gfx::Rect opaque_rect, |
29 return static_cast<const IOSurfaceDrawQuad*>(quad); | 23 gfx::Size io_surface_size, |
| 24 unsigned io_surface_texture_id, |
| 25 Orientation orientation) { |
| 26 gfx::Rect visible_rect = rect; |
| 27 bool needs_blending = false; |
| 28 DrawQuad::SetAll(shared_quad_state, DrawQuad::IO_SURFACE_CONTENT, rect, |
| 29 opaque_rect, visible_rect, needs_blending); |
| 30 this->io_surface_size = io_surface_size; |
| 31 this->io_surface_texture_id = io_surface_texture_id; |
| 32 this->orientation = orientation; |
| 33 } |
| 34 |
| 35 void IOSurfaceDrawQuad::SetAll(const SharedQuadState* shared_quad_state, |
| 36 gfx::Rect rect, |
| 37 gfx::Rect opaque_rect, |
| 38 gfx::Rect visible_rect, |
| 39 bool needs_blending, |
| 40 gfx::Size io_surface_size, |
| 41 unsigned io_surface_texture_id, |
| 42 Orientation orientation) { |
| 43 DrawQuad::SetAll(shared_quad_state, DrawQuad::IO_SURFACE_CONTENT, rect, |
| 44 opaque_rect, visible_rect, needs_blending); |
| 45 this->io_surface_size = io_surface_size; |
| 46 this->io_surface_texture_id = io_surface_texture_id; |
| 47 this->orientation = orientation; |
| 48 } |
| 49 |
| 50 const IOSurfaceDrawQuad* IOSurfaceDrawQuad::MaterialCast( |
| 51 const DrawQuad* quad) { |
| 52 DCHECK(quad->material == DrawQuad::IO_SURFACE_CONTENT); |
| 53 return static_cast<const IOSurfaceDrawQuad*>(quad); |
30 } | 54 } |
31 | 55 |
32 } // namespace cc | 56 } // namespace cc |
OLD | NEW |