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: gpu/command_buffer/service/context_group.cc

Issue 22824009: Remove StreamTextureManager (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: address comments Created 7 years, 4 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/context_group.h" 5 #include "gpu/command_buffer/service/context_group.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 14 matching lines...) Expand all
25 #include "gpu/command_buffer/service/transfer_buffer_manager.h" 25 #include "gpu/command_buffer/service/transfer_buffer_manager.h"
26 #include "ui/gl/gl_implementation.h" 26 #include "ui/gl/gl_implementation.h"
27 27
28 namespace gpu { 28 namespace gpu {
29 namespace gles2 { 29 namespace gles2 {
30 30
31 ContextGroup::ContextGroup( 31 ContextGroup::ContextGroup(
32 MailboxManager* mailbox_manager, 32 MailboxManager* mailbox_manager,
33 ImageManager* image_manager, 33 ImageManager* image_manager,
34 MemoryTracker* memory_tracker, 34 MemoryTracker* memory_tracker,
35 StreamTextureManager* stream_texture_manager,
36 bool bind_generates_resource) 35 bool bind_generates_resource)
37 : mailbox_manager_(mailbox_manager ? mailbox_manager : new MailboxManager), 36 : mailbox_manager_(mailbox_manager ? mailbox_manager : new MailboxManager),
38 image_manager_(image_manager ? image_manager : new ImageManager), 37 image_manager_(image_manager ? image_manager : new ImageManager),
39 memory_tracker_(memory_tracker), 38 memory_tracker_(memory_tracker),
40 stream_texture_manager_(stream_texture_manager),
41 enforce_gl_minimums_(CommandLine::ForCurrentProcess()->HasSwitch( 39 enforce_gl_minimums_(CommandLine::ForCurrentProcess()->HasSwitch(
42 switches::kEnforceGLMinimums)), 40 switches::kEnforceGLMinimums)),
43 bind_generates_resource_(bind_generates_resource), 41 bind_generates_resource_(bind_generates_resource),
44 max_vertex_attribs_(0u), 42 max_vertex_attribs_(0u),
45 max_texture_units_(0u), 43 max_texture_units_(0u),
46 max_texture_image_units_(0u), 44 max_texture_image_units_(0u),
47 max_vertex_texture_image_units_(0u), 45 max_vertex_texture_image_units_(0u),
48 max_fragment_uniform_vectors_(0u), 46 max_fragment_uniform_vectors_(0u),
49 max_varying_vectors_(0u), 47 max_varying_vectors_(0u),
50 max_vertex_uniform_vectors_(0u), 48 max_vertex_uniform_vectors_(0u),
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 max_cube_map_texture_size = std::min( 170 max_cube_map_texture_size = std::min(
173 max_cube_map_texture_size, 171 max_cube_map_texture_size,
174 feature_info_->workarounds().max_cube_map_texture_size); 172 feature_info_->workarounds().max_cube_map_texture_size);
175 } 173 }
176 174
177 texture_manager_.reset(new TextureManager(memory_tracker_.get(), 175 texture_manager_.reset(new TextureManager(memory_tracker_.get(),
178 feature_info_.get(), 176 feature_info_.get(),
179 max_texture_size, 177 max_texture_size,
180 max_cube_map_texture_size)); 178 max_cube_map_texture_size));
181 texture_manager_->set_framebuffer_manager(framebuffer_manager_.get()); 179 texture_manager_->set_framebuffer_manager(framebuffer_manager_.get());
182 texture_manager_->set_stream_texture_manager(stream_texture_manager_);
183 180
184 const GLint kMinTextureImageUnits = 8; 181 const GLint kMinTextureImageUnits = 8;
185 const GLint kMinVertexTextureImageUnits = 0; 182 const GLint kMinVertexTextureImageUnits = 0;
186 if (!QueryGLFeatureU( 183 if (!QueryGLFeatureU(
187 GL_MAX_TEXTURE_IMAGE_UNITS, kMinTextureImageUnits, 184 GL_MAX_TEXTURE_IMAGE_UNITS, kMinTextureImageUnits,
188 &max_texture_image_units_) || 185 &max_texture_image_units_) ||
189 !QueryGLFeatureU( 186 !QueryGLFeatureU(
190 GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, kMinVertexTextureImageUnits, 187 GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, kMinVertexTextureImageUnits,
191 &max_vertex_texture_image_units_)) { 188 &max_vertex_texture_image_units_)) {
192 LOG(ERROR) << "ContextGroup::Initialize failed because too few " 189 LOG(ERROR) << "ContextGroup::Initialize failed because too few "
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 program_manager_->Destroy(have_context); 305 program_manager_->Destroy(have_context);
309 program_manager_.reset(); 306 program_manager_.reset();
310 } 307 }
311 308
312 if (shader_manager_ != NULL) { 309 if (shader_manager_ != NULL) {
313 shader_manager_->Destroy(have_context); 310 shader_manager_->Destroy(have_context);
314 shader_manager_.reset(); 311 shader_manager_.reset();
315 } 312 }
316 313
317 memory_tracker_ = NULL; 314 memory_tracker_ = NULL;
318 stream_texture_manager_ = NULL;
319 } 315 }
320 316
321 IdAllocatorInterface* ContextGroup::GetIdAllocator(unsigned namespace_id) { 317 IdAllocatorInterface* ContextGroup::GetIdAllocator(unsigned namespace_id) {
322 if (namespace_id >= arraysize(id_namespaces_)) 318 if (namespace_id >= arraysize(id_namespaces_))
323 return NULL; 319 return NULL;
324 320
325 return id_namespaces_[namespace_id].get(); 321 return id_namespaces_[namespace_id].get();
326 } 322 }
327 323
328 uint32 ContextGroup::GetMemRepresented() const { 324 uint32 ContextGroup::GetMemRepresented() const {
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 GLenum pname, GLint min_required, uint32* v) { 374 GLenum pname, GLint min_required, uint32* v) {
379 uint32 value = 0; 375 uint32 value = 0;
380 GetIntegerv(pname, &value); 376 GetIntegerv(pname, &value);
381 bool result = CheckGLFeatureU(min_required, &value); 377 bool result = CheckGLFeatureU(min_required, &value);
382 *v = value; 378 *v = value;
383 return result; 379 return result;
384 } 380 }
385 381
386 } // namespace gles2 382 } // namespace gles2
387 } // namespace gpu 383 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/context_group.h ('k') | gpu/command_buffer/service/context_group_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698