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

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_decoder.cc

Issue 16136005: Update remaining files to use WeakPtr<T>::get() instead of "operator T*" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 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
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 "gpu/command_buffer/service/gles2_cmd_decoder.h" 5 #include "gpu/command_buffer/service/gles2_cmd_decoder.h"
6 6
7 #include <stdio.h> 7 #include <stdio.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <list> 10 #include <list>
(...skipping 2964 matching lines...) Expand 10 before | Expand all | Expand 10 after
2975 if (framebuffer != NULL) { 2975 if (framebuffer != NULL) {
2976 return framebuffer->GetColorAttachmentFormat(); 2976 return framebuffer->GetColorAttachmentFormat();
2977 } else if (offscreen_target_frame_buffer_.get()) { 2977 } else if (offscreen_target_frame_buffer_.get()) {
2978 return offscreen_target_color_format_; 2978 return offscreen_target_color_format_;
2979 } else { 2979 } else {
2980 return back_buffer_color_format_; 2980 return back_buffer_color_format_;
2981 } 2981 }
2982 } 2982 }
2983 2983
2984 void GLES2DecoderImpl::UpdateParentTextureInfo() { 2984 void GLES2DecoderImpl::UpdateParentTextureInfo() {
2985 if (parent_) { 2985 if (parent_.get()) {
2986 // Update the info about the offscreen saved color texture in the parent. 2986 // Update the info about the offscreen saved color texture in the parent.
2987 // The reference to the parent is a weak pointer and will become null if the 2987 // The reference to the parent is a weak pointer and will become null if the
2988 // parent is later destroyed. 2988 // parent is later destroyed.
2989 GLenum target = offscreen_saved_color_texture_info_->texture()->target(); 2989 GLenum target = offscreen_saved_color_texture_info_->texture()->target();
2990 TextureManager* parent_texture_manager = parent_->texture_manager(); 2990 TextureManager* parent_texture_manager = parent_->texture_manager();
2991 glBindTexture(target, offscreen_saved_color_texture_info_->service_id()); 2991 glBindTexture(target, offscreen_saved_color_texture_info_->service_id());
2992 parent_texture_manager->SetLevelInfo( 2992 parent_texture_manager->SetLevelInfo(
2993 offscreen_saved_color_texture_info_.get(), 2993 offscreen_saved_color_texture_info_.get(),
2994 GL_TEXTURE_2D, 2994 GL_TEXTURE_2D,
2995 0, // level 2995 0, // level
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
3240 } 3240 }
3241 3241
3242 bool GLES2DecoderImpl::SetParent(GLES2Decoder* new_parent, 3242 bool GLES2DecoderImpl::SetParent(GLES2Decoder* new_parent,
3243 uint32 new_parent_texture_id) { 3243 uint32 new_parent_texture_id) {
3244 if (!offscreen_saved_color_texture_.get()) 3244 if (!offscreen_saved_color_texture_.get())
3245 return false; 3245 return false;
3246 3246
3247 // Remove the saved frame buffer mapping from the parent decoder. The 3247 // Remove the saved frame buffer mapping from the parent decoder. The
3248 // parent pointer is a weak pointer so it will be null if the parent has 3248 // parent pointer is a weak pointer so it will be null if the parent has
3249 // already been destroyed. 3249 // already been destroyed.
3250 if (parent_) { 3250 if (parent_.get()) {
3251 ChildList::iterator it = std::find( 3251 ChildList::iterator it =
3252 parent_->children_.begin(), 3252 std::find(parent_->children_.begin(), parent_->children_.end(), this);
3253 parent_->children_.end(),
3254 this);
3255 DCHECK(it != parent_->children_.end()); 3253 DCHECK(it != parent_->children_.end());
3256 parent_->children_.erase(it); 3254 parent_->children_.erase(it);
3257 // First check the texture has been mapped into the parent. This might not 3255 // First check the texture has been mapped into the parent. This might not
3258 // be the case if initialization failed midway through. 3256 // be the case if initialization failed midway through.
3259 if (offscreen_saved_color_texture_info_.get() && 3257 if (offscreen_saved_color_texture_info_.get() &&
3260 offscreen_saved_color_texture_info_->client_id()) { 3258 offscreen_saved_color_texture_info_->client_id()) {
3261 parent_->texture_manager()->RemoveTexture( 3259 parent_->texture_manager()->RemoveTexture(
3262 offscreen_saved_color_texture_info_->client_id()); 3260 offscreen_saved_color_texture_info_->client_id());
3263 } 3261 }
3264 } 3262 }
(...skipping 5774 matching lines...) Expand 10 before | Expand all | Expand 10 after
9039 // Only loses the context once. 9037 // Only loses the context once.
9040 if (reset_status_ != GL_NO_ERROR) { 9038 if (reset_status_ != GL_NO_ERROR) {
9041 return; 9039 return;
9042 } 9040 }
9043 9041
9044 // Marks this context as lost. 9042 // Marks this context as lost.
9045 reset_status_ = reset_status; 9043 reset_status_ = reset_status;
9046 current_decoder_error_ = error::kLostContext; 9044 current_decoder_error_ = error::kLostContext;
9047 9045
9048 // Loses the parent's context. 9046 // Loses the parent's context.
9049 if (parent_) { 9047 if (parent_.get()) {
9050 parent_->LoseContext(reset_status); 9048 parent_->LoseContext(reset_status);
9051 } 9049 }
9052 9050
9053 // Loses any child contexts. 9051 // Loses any child contexts.
9054 for (ChildList::iterator it = children_.begin(); 9052 for (ChildList::iterator it = children_.begin();
9055 it != children_.end(); 9053 it != children_.end();
9056 ++it) { 9054 ++it) {
9057 (*it)->LoseContext(reset_status); 9055 (*it)->LoseContext(reset_status);
9058 } 9056 }
9059 } 9057 }
(...skipping 1314 matching lines...) Expand 10 before | Expand all | Expand 10 after
10374 return error::kNoError; 10372 return error::kNoError;
10375 } 10373 }
10376 10374
10377 // Include the auto-generated part of this file. We split this because it means 10375 // Include the auto-generated part of this file. We split this because it means
10378 // we can easily edit the non-auto generated parts right here in this file 10376 // we can easily edit the non-auto generated parts right here in this file
10379 // instead of having to edit some template or the code generator. 10377 // instead of having to edit some template or the code generator.
10380 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h" 10378 #include "gpu/command_buffer/service/gles2_cmd_decoder_autogen.h"
10381 10379
10382 } // namespace gles2 10380 } // namespace gles2
10383 } // namespace gpu 10381 } // namespace gpu
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698