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

Side by Side Diff: content/renderer/gpu/compositor_software_output_device_gl_adapter.cc

Issue 11348371: cc: Move WebCompositorOutputSurface and related classes into cc/ (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: forlanding6 Created 8 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "content/renderer/gpu/compositor_software_output_device_gl_adapter.h" 5 #include "content/renderer/gpu/compositor_software_output_device_gl_adapter.h"
6 6
7 #include "base/debug/trace_event.h" 7 #include "base/debug/trace_event.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "third_party/skia/include/core/SkBitmap.h" 9 #include "third_party/skia/include/core/SkBitmap.h"
10 #include "third_party/skia/include/core/SkPixelRef.h" 10 #include "third_party/skia/include/core/SkPixelRef.h"
(...skipping 21 matching lines...) Expand all
32 framebuffer_texture_id_(0), 32 framebuffer_texture_id_(0),
33 context3d_(context3D), 33 context3d_(context3D),
34 locked_for_write_(false) { 34 locked_for_write_(false) {
35 } 35 }
36 36
37 CompositorSoftwareOutputDeviceGLAdapter:: 37 CompositorSoftwareOutputDeviceGLAdapter::
38 ~CompositorSoftwareOutputDeviceGLAdapter() { 38 ~CompositorSoftwareOutputDeviceGLAdapter() {
39 Destroy(); 39 Destroy();
40 } 40 }
41 41
42 WebImage* CompositorSoftwareOutputDeviceGLAdapter::lock(bool forWrite) { 42 WebImage* CompositorSoftwareOutputDeviceGLAdapter::Lock(bool forWrite) {
43 locked_for_write_ = forWrite; 43 locked_for_write_ = forWrite;
44 image_ = device_->accessBitmap(forWrite); 44 image_ = device_->accessBitmap(forWrite);
45 return &image_; 45 return &image_;
46 } 46 }
47 47
48 void CompositorSoftwareOutputDeviceGLAdapter::unlock() { 48 void CompositorSoftwareOutputDeviceGLAdapter::Unlock() {
49 if (locked_for_write_) 49 if (locked_for_write_)
50 Draw(device_->accessBitmap(false).pixelRef()->pixels()); 50 Draw(device_->accessBitmap(false).pixelRef()->pixels());
51 image_.reset(); 51 image_.reset();
52 } 52 }
53 53
54 void CompositorSoftwareOutputDeviceGLAdapter::didChangeViewportSize( 54 void CompositorSoftwareOutputDeviceGLAdapter::DidChangeViewportSize(
55 WebSize size) { 55 gfx::Size size) {
56 if (!initialized_) 56 if (!initialized_)
57 Initialize(); 57 Initialize();
58 58
59 if (framebuffer_texture_size_ != gfx::Size(size)) 59 if (framebuffer_texture_size_ != gfx::Size(size))
60 Resize(size); 60 Resize(size);
61 } 61 }
62 62
63 void CompositorSoftwareOutputDeviceGLAdapter::Initialize() { 63 void CompositorSoftwareOutputDeviceGLAdapter::Initialize() {
64 // Vertex shader that flips the y axis. 64 // Vertex shader that flips the y axis.
65 static const char g_vertex_shader[] = 65 static const char g_vertex_shader[] =
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 context3d_->texImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 175 context3d_->texImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
176 framebuffer_texture_size_.width(), framebuffer_texture_size_.height(), 176 framebuffer_texture_size_.width(), framebuffer_texture_size_.height(),
177 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels); 177 0, GL_RGBA, GL_UNSIGNED_BYTE, pixels);
178 178
179 context3d_->drawArrays(GL_TRIANGLE_STRIP, 0, 4); 179 context3d_->drawArrays(GL_TRIANGLE_STRIP, 0, 4);
180 180
181 context3d_->prepareTexture(); 181 context3d_->prepareTexture();
182 } 182 }
183 183
184 } // namespace content 184 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/gpu/compositor_software_output_device_gl_adapter.h ('k') | content/renderer/render_view_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698