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

Side by Side Diff: cc/resources/tile_manager.h

Issue 21159007: cc: Adding support for RGBA_4444 tile textures (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: deprecate GLenum format throughout cc Created 7 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
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 #ifndef CC_RESOURCES_TILE_MANAGER_H_ 5 #ifndef CC_RESOURCES_TILE_MANAGER_H_
6 #define CC_RESOURCES_TILE_MANAGER_H_ 6 #define CC_RESOURCES_TILE_MANAGER_H_
7 7
8 #include <queue> 8 #include <queue>
9 #include <set> 9 #include <set>
10 #include <vector> 10 #include <vector>
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 // by layers; they automatically register with the manager when they are 46 // by layers; they automatically register with the manager when they are
47 // created, and unregister from the manager when they are deleted. 47 // created, and unregister from the manager when they are deleted.
48 class CC_EXPORT TileManager : public RasterWorkerPoolClient { 48 class CC_EXPORT TileManager : public RasterWorkerPoolClient {
49 public: 49 public:
50 static scoped_ptr<TileManager> Create( 50 static scoped_ptr<TileManager> Create(
51 TileManagerClient* client, 51 TileManagerClient* client,
52 ResourceProvider* resource_provider, 52 ResourceProvider* resource_provider,
53 size_t num_raster_threads, 53 size_t num_raster_threads,
54 RenderingStatsInstrumentation* rendering_stats_instrumentation, 54 RenderingStatsInstrumentation* rendering_stats_instrumentation,
55 bool use_map_image, 55 bool use_map_image,
56 size_t max_transfer_buffer_usage_bytes); 56 size_t max_transfer_buffer_usage_bytes,
57 bool use_rgba_4444_tiles);
57 virtual ~TileManager(); 58 virtual ~TileManager();
58 59
59 const GlobalStateThatImpactsTilePriority& GlobalState() const { 60 const GlobalStateThatImpactsTilePriority& GlobalState() const {
60 return global_state_; 61 return global_state_;
61 } 62 }
62 void SetGlobalState(const GlobalStateThatImpactsTilePriority& state); 63 void SetGlobalState(const GlobalStateThatImpactsTilePriority& state);
63 64
64 void ManageTiles(); 65 void ManageTiles();
65 66
66 // Returns true when visible tiles have been initialized. 67 // Returns true when visible tiles have been initialized.
(...skipping 29 matching lines...) Expand all
96 } 97 }
97 RasterWorkerPool* RasterWorkerPoolForTesting() { 98 RasterWorkerPool* RasterWorkerPoolForTesting() {
98 return raster_worker_pool_.get(); 99 return raster_worker_pool_.get();
99 } 100 }
100 101
101 protected: 102 protected:
102 TileManager(TileManagerClient* client, 103 TileManager(TileManagerClient* client,
103 ResourceProvider* resource_provider, 104 ResourceProvider* resource_provider,
104 scoped_ptr<RasterWorkerPool> raster_worker_pool, 105 scoped_ptr<RasterWorkerPool> raster_worker_pool,
105 size_t num_raster_threads, 106 size_t num_raster_threads,
106 RenderingStatsInstrumentation* rendering_stats_instrumentation); 107 RenderingStatsInstrumentation* rendering_stats_instrumentation,
108 ResourceProvider::TextureFormat texture_type);
107 109
108 // Methods called by Tile 110 // Methods called by Tile
109 friend class Tile; 111 friend class Tile;
110 void RegisterTile(Tile* tile); 112 void RegisterTile(Tile* tile);
111 void UnregisterTile(Tile* tile); 113 void UnregisterTile(Tile* tile);
112 void DidChangeTilePriority(Tile* tile); 114 void DidChangeTilePriority(Tile* tile);
113 115
114 // Overriden from RasterWorkerPoolClient: 116 // Overriden from RasterWorkerPoolClient:
115 virtual bool ShouldForceTasksRequiredForActivationToComplete() const 117 virtual bool ShouldForceTasksRequiredForActivationToComplete() const
116 OVERRIDE; 118 OVERRIDE;
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
176 bool did_initialize_visible_tile_; 178 bool did_initialize_visible_tile_;
177 179
178 typedef base::hash_map<uint32_t, RasterWorkerPool::Task> PixelRefTaskMap; 180 typedef base::hash_map<uint32_t, RasterWorkerPool::Task> PixelRefTaskMap;
179 typedef base::hash_map<int, PixelRefTaskMap> LayerPixelRefTaskMap; 181 typedef base::hash_map<int, PixelRefTaskMap> LayerPixelRefTaskMap;
180 LayerPixelRefTaskMap image_decode_tasks_; 182 LayerPixelRefTaskMap image_decode_tasks_;
181 183
182 typedef base::hash_map<int, int> LayerCountMap; 184 typedef base::hash_map<int, int> LayerCountMap;
183 LayerCountMap used_layer_counts_; 185 LayerCountMap used_layer_counts_;
184 186
185 RasterTaskCompletionStats update_visible_tiles_stats_; 187 RasterTaskCompletionStats update_visible_tiles_stats_;
188 ResourceProvider::TextureFormat texture_type_;
186 189
187 DISALLOW_COPY_AND_ASSIGN(TileManager); 190 DISALLOW_COPY_AND_ASSIGN(TileManager);
188 }; 191 };
189 192
190 } // namespace cc 193 } // namespace cc
191 194
192 #endif // CC_RESOURCES_TILE_MANAGER_H_ 195 #endif // CC_RESOURCES_TILE_MANAGER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698