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

Side by Side Diff: cc/prioritized_resource_manager.cc

Issue 11578019: Remove the pools from the ResourceProvider. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Re-resolve against HEAD 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
« no previous file with comments | « cc/prioritized_resource_manager.h ('k') | cc/prioritized_resource_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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 "cc/prioritized_resource_manager.h" 5 #include "cc/prioritized_resource_manager.h"
6 6
7 #include "base/debug/trace_event.h" 7 #include "base/debug/trace_event.h"
8 #include "base/stl_util.h" 8 #include "base/stl_util.h"
9 #include "cc/prioritized_resource.h" 9 #include "cc/prioritized_resource.h"
10 #include "cc/priority_calculator.h" 10 #include "cc/priority_calculator.h"
11 #include "cc/proxy.h" 11 #include "cc/proxy.h"
12 #include <algorithm> 12 #include <algorithm>
13 13
14 using namespace std; 14 using namespace std;
15 15
16 namespace cc { 16 namespace cc {
17 17
18 PrioritizedResourceManager::PrioritizedResourceManager(int pool, const Proxy* pr oxy) 18 PrioritizedResourceManager::PrioritizedResourceManager(const Proxy* proxy)
19 : m_proxy(proxy) 19 : m_proxy(proxy)
20 , m_maxMemoryLimitBytes(defaultMemoryAllocationLimit()) 20 , m_maxMemoryLimitBytes(defaultMemoryAllocationLimit())
21 , m_externalPriorityCutoff(PriorityCalculator::allowEverythingCutoff()) 21 , m_externalPriorityCutoff(PriorityCalculator::allowEverythingCutoff())
22 , m_memoryUseBytes(0) 22 , m_memoryUseBytes(0)
23 , m_memoryAboveCutoffBytes(0) 23 , m_memoryAboveCutoffBytes(0)
24 , m_memoryAvailableBytes(0) 24 , m_memoryAvailableBytes(0)
25 , m_pool(pool)
26 , m_backingsTailNotSorted(false) 25 , m_backingsTailNotSorted(false)
27 , m_memoryVisibleBytes(0) 26 , m_memoryVisibleBytes(0)
28 , m_memoryVisibleAndNearbyBytes(0) 27 , m_memoryVisibleAndNearbyBytes(0)
29 , m_memoryVisibleLastPushedBytes(0) 28 , m_memoryVisibleLastPushedBytes(0)
30 , m_memoryVisibleAndNearbyLastPushedBytes(0) 29 , m_memoryVisibleAndNearbyLastPushedBytes(0)
31 { 30 {
32 } 31 }
33 32
34 PrioritizedResourceManager::~PrioritizedResourceManager() 33 PrioritizedResourceManager::~PrioritizedResourceManager()
35 { 34 {
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after
389 { 388 {
390 DCHECK(m_proxy->isMainThread() || (m_proxy->isImplThread() && m_proxy->isMai nThreadBlocked())); 389 DCHECK(m_proxy->isMainThread() || (m_proxy->isImplThread() && m_proxy->isMai nThreadBlocked()));
391 if (texture->backing()) 390 if (texture->backing())
392 texture->unlink(); 391 texture->unlink();
393 } 392 }
394 393
395 PrioritizedResource::Backing* PrioritizedResourceManager::createBacking(gfx::Siz e size, GLenum format, ResourceProvider* resourceProvider) 394 PrioritizedResource::Backing* PrioritizedResourceManager::createBacking(gfx::Siz e size, GLenum format, ResourceProvider* resourceProvider)
396 { 395 {
397 DCHECK(m_proxy->isImplThread() && m_proxy->isMainThreadBlocked()); 396 DCHECK(m_proxy->isImplThread() && m_proxy->isMainThreadBlocked());
398 DCHECK(resourceProvider); 397 DCHECK(resourceProvider);
399 ResourceProvider::ResourceId resourceId = resourceProvider->createResource(m _pool, size, format, ResourceProvider::TextureUsageAny); 398 ResourceProvider::ResourceId resourceId = resourceProvider->createResource(s ize, format, ResourceProvider::TextureUsageAny);
400 PrioritizedResource::Backing* backing = new PrioritizedResource::Backing(res ourceId, resourceProvider, size, format); 399 PrioritizedResource::Backing* backing = new PrioritizedResource::Backing(res ourceId, resourceProvider, size, format);
401 m_memoryUseBytes += backing->bytes(); 400 m_memoryUseBytes += backing->bytes();
402 return backing; 401 return backing;
403 } 402 }
404 403
405 void PrioritizedResourceManager::evictFirstBackingResource(ResourceProvider* res ourceProvider) 404 void PrioritizedResourceManager::evictFirstBackingResource(ResourceProvider* res ourceProvider)
406 { 405 {
407 DCHECK(m_proxy->isImplThread()); 406 DCHECK(m_proxy->isImplThread());
408 DCHECK(resourceProvider); 407 DCHECK(resourceProvider);
409 DCHECK(!m_backings.empty()); 408 DCHECK(!m_backings.empty());
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
471 } 470 }
472 #endif 471 #endif
473 } 472 }
474 473
475 const Proxy* PrioritizedResourceManager::proxyForDebug() const 474 const Proxy* PrioritizedResourceManager::proxyForDebug() const
476 { 475 {
477 return m_proxy; 476 return m_proxy;
478 } 477 }
479 478
480 } // namespace cc 479 } // namespace cc
OLDNEW
« no previous file with comments | « cc/prioritized_resource_manager.h ('k') | cc/prioritized_resource_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698