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

Side by Side Diff: content/common/gpu/client/gl_helper.cc

Issue 296493003: [Android WebView] Fix DevTools Screencast slowness (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: PS5 + changed discussed off-line Created 6 years, 7 months 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
« no previous file with comments | « content/common/gpu/client/gl_helper.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/common/gpu/client/gl_helper.h" 5 #include "content/common/gpu/client/gl_helper.h"
6 6
7 #include <queue> 7 #include <queue>
8 #include <string> 8 #include <string>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 665 matching lines...) Expand 10 before | Expand all | Expand 10 after
676 676
677 GLHelper::~GLHelper() {} 677 GLHelper::~GLHelper() {}
678 678
679 void GLHelper::CropScaleReadbackAndCleanTexture( 679 void GLHelper::CropScaleReadbackAndCleanTexture(
680 GLuint src_texture, 680 GLuint src_texture,
681 const gfx::Size& src_size, 681 const gfx::Size& src_size,
682 const gfx::Rect& src_subrect, 682 const gfx::Rect& src_subrect,
683 const gfx::Size& dst_size, 683 const gfx::Size& dst_size,
684 unsigned char* out, 684 unsigned char* out,
685 const SkBitmap::Config config, 685 const SkBitmap::Config config,
686 const base::Callback<void(bool)>& callback) { 686 const base::Callback<void(bool)>& callback,
687 GLHelper::ScalerQuality quality) {
687 InitCopyTextToImpl(); 688 InitCopyTextToImpl();
688 copy_texture_to_impl_->CropScaleReadbackAndCleanTexture( 689 copy_texture_to_impl_->CropScaleReadbackAndCleanTexture(
689 src_texture, 690 src_texture,
690 src_size, 691 src_size,
691 src_subrect, 692 src_subrect,
692 dst_size, 693 dst_size,
693 out, 694 out,
694 config, 695 config,
695 callback, 696 callback,
696 GLHelper::SCALER_QUALITY_FAST); 697 quality);
697 } 698 }
698 699
699 void GLHelper::CropScaleReadbackAndCleanMailbox( 700 void GLHelper::CropScaleReadbackAndCleanMailbox(
700 const gpu::Mailbox& src_mailbox, 701 const gpu::Mailbox& src_mailbox,
701 uint32 sync_point, 702 uint32 sync_point,
702 const gfx::Size& src_size, 703 const gfx::Size& src_size,
703 const gfx::Rect& src_subrect, 704 const gfx::Rect& src_subrect,
704 const gfx::Size& dst_size, 705 const gfx::Size& dst_size,
705 unsigned char* out, 706 unsigned char* out,
706 const SkBitmap::Config bitmap_config, 707 const SkBitmap::Config bitmap_config,
707 const base::Callback<void(bool)>& callback) { 708 const base::Callback<void(bool)>& callback,
709 GLHelper::ScalerQuality quality) {
708 GLuint mailbox_texture = ConsumeMailboxToTexture(src_mailbox, sync_point); 710 GLuint mailbox_texture = ConsumeMailboxToTexture(src_mailbox, sync_point);
709 CropScaleReadbackAndCleanTexture( 711 CropScaleReadbackAndCleanTexture(
710 mailbox_texture, src_size, src_subrect, dst_size, out, 712 mailbox_texture, src_size, src_subrect, dst_size, out,
711 bitmap_config, 713 bitmap_config,
712 callback); 714 callback,
715 quality);
713 gl_->DeleteTextures(1, &mailbox_texture); 716 gl_->DeleteTextures(1, &mailbox_texture);
714 } 717 }
715 718
716 void GLHelper::ReadbackTextureSync(GLuint texture, 719 void GLHelper::ReadbackTextureSync(GLuint texture,
717 const gfx::Rect& src_rect, 720 const gfx::Rect& src_rect,
718 unsigned char* out, 721 unsigned char* out,
719 SkBitmap::Config format) { 722 SkBitmap::Config format) {
720 InitCopyTextToImpl(); 723 InitCopyTextToImpl();
721 copy_texture_to_impl_->ReadbackTextureSync(texture, src_rect, out, format); 724 copy_texture_to_impl_->ReadbackTextureSync(texture, src_rect, out, format);
722 } 725 }
(...skipping 527 matching lines...) Expand 10 before | Expand all | Expand 10 after
1250 return copy_texture_to_impl_->CreateReadbackPipelineYUV(quality, 1253 return copy_texture_to_impl_->CreateReadbackPipelineYUV(quality,
1251 src_size, 1254 src_size,
1252 src_subrect, 1255 src_subrect,
1253 dst_size, 1256 dst_size,
1254 dst_subrect, 1257 dst_subrect,
1255 flip_vertically, 1258 flip_vertically,
1256 use_mrt); 1259 use_mrt);
1257 } 1260 }
1258 1261
1259 } // namespace content 1262 } // namespace content
OLDNEW
« no previous file with comments | « content/common/gpu/client/gl_helper.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698