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

Side by Side Diff: gpu/ipc/service/stream_texture_android.cc

Issue 2264403003: Remove unused variables in StreamTexure (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 3 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
« no previous file with comments | « gpu/ipc/service/stream_texture_android.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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/ipc/service/stream_texture_android.h" 5 #include "gpu/ipc/service/stream_texture_android.h"
6 6
7 #include <string.h> 7 #include <string.h>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/strings/stringize_macros.h"
11 #include "gpu/command_buffer/service/context_group.h" 10 #include "gpu/command_buffer/service/context_group.h"
12 #include "gpu/command_buffer/service/context_state.h" 11 #include "gpu/command_buffer/service/context_state.h"
13 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" 12 #include "gpu/command_buffer/service/gles2_cmd_decoder.h"
14 #include "gpu/command_buffer/service/texture_manager.h" 13 #include "gpu/command_buffer/service/texture_manager.h"
15 #include "gpu/ipc/common/android/surface_texture_peer.h" 14 #include "gpu/ipc/common/android/surface_texture_peer.h"
16 #include "gpu/ipc/common/gpu_messages.h" 15 #include "gpu/ipc/common/gpu_messages.h"
17 #include "gpu/ipc/service/gpu_channel.h" 16 #include "gpu/ipc/service/gpu_channel.h"
18 #include "ui/gfx/geometry/size.h" 17 #include "ui/gfx/geometry/size.h"
19 #include "ui/gl/gl_context.h" 18 #include "ui/gl/gl_context.h"
20 #include "ui/gl/gl_helper.h"
21 #include "ui/gl/scoped_binders.h"
22 #include "ui/gl/scoped_make_current.h" 19 #include "ui/gl/scoped_make_current.h"
23 20
24 namespace gpu { 21 namespace gpu {
25 22
26 using gles2::ContextGroup; 23 using gles2::ContextGroup;
27 using gles2::GLES2Decoder; 24 using gles2::GLES2Decoder;
28 using gles2::TextureManager; 25 using gles2::TextureManager;
29 using gles2::TextureRef; 26 using gles2::TextureRef;
30 27
31 // static 28 // static
(...skipping 29 matching lines...) Expand all
61 StreamTexture::StreamTexture(GpuCommandBufferStub* owner_stub, 58 StreamTexture::StreamTexture(GpuCommandBufferStub* owner_stub,
62 int32_t route_id, 59 int32_t route_id,
63 uint32_t texture_id) 60 uint32_t texture_id)
64 : surface_texture_(gl::SurfaceTexture::Create(texture_id)), 61 : surface_texture_(gl::SurfaceTexture::Create(texture_id)),
65 size_(0, 0), 62 size_(0, 0),
66 has_pending_frame_(false), 63 has_pending_frame_(false),
67 owner_stub_(owner_stub), 64 owner_stub_(owner_stub),
68 route_id_(route_id), 65 route_id_(route_id),
69 has_listener_(false), 66 has_listener_(false),
70 texture_id_(texture_id), 67 texture_id_(texture_id),
71 framebuffer_(0),
72 vertex_shader_(0),
73 fragment_shader_(0),
74 program_(0),
75 vertex_buffer_(0),
76 u_xform_location_(-1),
77 weak_factory_(this) { 68 weak_factory_(this) {
78 owner_stub->AddDestructionObserver(this); 69 owner_stub->AddDestructionObserver(this);
79 memset(current_matrix_, 0, sizeof(current_matrix_)); 70 memset(current_matrix_, 0, sizeof(current_matrix_));
80 owner_stub->channel()->AddRoute(route_id, owner_stub->stream_id(), this); 71 owner_stub->channel()->AddRoute(route_id, owner_stub->stream_id(), this);
81 surface_texture_->SetFrameAvailableCallback(base::Bind( 72 surface_texture_->SetFrameAvailableCallback(base::Bind(
82 &StreamTexture::OnFrameAvailable, weak_factory_.GetWeakPtr())); 73 &StreamTexture::OnFrameAvailable, weak_factory_.GetWeakPtr()));
83 } 74 }
84 75
85 StreamTexture::~StreamTexture() { 76 StreamTexture::~StreamTexture() {
86 if (owner_stub_) { 77 if (owner_stub_) {
87 owner_stub_->RemoveDestructionObserver(this); 78 owner_stub_->RemoveDestructionObserver(this);
88 owner_stub_->channel()->RemoveRoute(route_id_); 79 owner_stub_->channel()->RemoveRoute(route_id_);
89 } 80 }
90 } 81 }
91 82
92 // gpu::gles2::GLStreamTextureMatrix implementation 83 // gpu::gles2::GLStreamTextureMatrix implementation
93 void StreamTexture::GetTextureMatrix(float xform[16]) { 84 void StreamTexture::GetTextureMatrix(float xform[16]) {
94 if (surface_texture_) { 85 if (surface_texture_) {
95 UpdateTexImage(); 86 UpdateTexImage();
96 surface_texture_->GetTransformMatrix(current_matrix_); 87 surface_texture_->GetTransformMatrix(current_matrix_);
97 } 88 }
98 memcpy(xform, current_matrix_, sizeof(current_matrix_)); 89 memcpy(xform, current_matrix_, sizeof(current_matrix_));
99 YInvertMatrix(xform); 90 YInvertMatrix(xform);
100 } 91 }
101 92
102 void StreamTexture::OnWillDestroyStub() { 93 void StreamTexture::OnWillDestroyStub() {
103 owner_stub_->RemoveDestructionObserver(this); 94 owner_stub_->RemoveDestructionObserver(this);
104 owner_stub_->channel()->RemoveRoute(route_id_); 95 owner_stub_->channel()->RemoveRoute(route_id_);
105 96
106 if (framebuffer_) {
107 std::unique_ptr<ui::ScopedMakeCurrent> scoped_make_current(
108 MakeStubCurrent());
109
110 glDeleteProgram(program_);
111 glDeleteShader(vertex_shader_);
112 glDeleteShader(fragment_shader_);
113 glDeleteBuffersARB(1, &vertex_buffer_);
114 glDeleteFramebuffersEXT(1, &framebuffer_);
115 program_ = 0;
116 vertex_shader_ = 0;
117 fragment_shader_ = 0;
118 vertex_buffer_ = 0;
119 framebuffer_ = 0;
120 u_xform_location_ = -1;
121 }
122
123 owner_stub_ = NULL; 97 owner_stub_ = NULL;
124 98
125 // If the owner goes away, there is no need to keep the SurfaceTexture around. 99 // If the owner goes away, there is no need to keep the SurfaceTexture around.
126 // The GL texture will keep working regardless with the currently bound frame. 100 // The GL texture will keep working regardless with the currently bound frame.
127 surface_texture_ = NULL; 101 surface_texture_ = NULL;
128 } 102 }
129 103
130 void StreamTexture::Destroy(bool have_context) { 104 void StreamTexture::Destroy(bool have_context) {
131 NOTREACHED(); 105 NOTREACHED();
132 } 106 }
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 return false; 247 return false;
274 } 248 }
275 249
276 void StreamTexture::OnMemoryDump(base::trace_event::ProcessMemoryDump* pmd, 250 void StreamTexture::OnMemoryDump(base::trace_event::ProcessMemoryDump* pmd,
277 uint64_t process_tracing_id, 251 uint64_t process_tracing_id,
278 const std::string& dump_name) { 252 const std::string& dump_name) {
279 // TODO(ericrk): Add OnMemoryDump for GLImages. crbug.com/514914 253 // TODO(ericrk): Add OnMemoryDump for GLImages. crbug.com/514914
280 } 254 }
281 255
282 } // namespace gpu 256 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/ipc/service/stream_texture_android.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698