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

Side by Side Diff: cc/resources/picture_layer_tiling_set.cc

Issue 775483002: cc: Remove max tiles and skewport constants from tiling client. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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
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/resources/picture_layer_tiling_set.h" 5 #include "cc/resources/picture_layer_tiling_set.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <set> 8 #include <set>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 11 matching lines...) Expand all
22 inline float LargerRatio(float float1, float float2) { 22 inline float LargerRatio(float float1, float float2) {
23 DCHECK_GT(float1, 0.f); 23 DCHECK_GT(float1, 0.f);
24 DCHECK_GT(float2, 0.f); 24 DCHECK_GT(float2, 0.f);
25 return float1 > float2 ? float1 / float2 : float2 / float1; 25 return float1 > float2 ? float1 / float2 : float2 / float1;
26 } 26 }
27 27
28 } // namespace 28 } // namespace
29 29
30 // static 30 // static
31 scoped_ptr<PictureLayerTilingSet> PictureLayerTilingSet::Create( 31 scoped_ptr<PictureLayerTilingSet> PictureLayerTilingSet::Create(
32 PictureLayerTilingClient* client) { 32 PictureLayerTilingClient* client,
33 return make_scoped_ptr(new PictureLayerTilingSet(client)); 33 size_t max_tiles_for_interest_area,
34 float skewport_target_time_in_seconds,
35 int skewport_extrapolation_limit_in_content) {
36 auto set = make_scoped_ptr(new PictureLayerTilingSet(client));
37 set->SetMaxTilesForInterestArea(max_tiles_for_interest_area);
38 set->SetSkewportTargetTimeInSeconds(skewport_target_time_in_seconds);
39 set->SetSkewportExtrapolationLimitInContentPixels(
40 skewport_extrapolation_limit_in_content);
41 return set;
34 } 42 }
35 43
36 PictureLayerTilingSet::PictureLayerTilingSet(PictureLayerTilingClient* client) 44 PictureLayerTilingSet::PictureLayerTilingSet(PictureLayerTilingClient* client)
37 : client_(client) { 45 : max_tiles_for_interest_area_(0u),
46 skewport_target_time_in_seconds_(0.f),
47 skewport_extrapolation_limit_in_content_pixels_(0),
48 client_(client) {
38 } 49 }
39 50
40 PictureLayerTilingSet::~PictureLayerTilingSet() { 51 PictureLayerTilingSet::~PictureLayerTilingSet() {
41 } 52 }
42 53
43 void PictureLayerTilingSet::SetClient(PictureLayerTilingClient* client) { 54 void PictureLayerTilingSet::SetClient(PictureLayerTilingClient* client) {
44 client_ = client; 55 client_ = client;
45 for (size_t i = 0; i < tilings_.size(); ++i) 56 for (size_t i = 0; i < tilings_.size(); ++i)
46 tilings_[i]->SetClient(client_); 57 tilings_[i]->SetClient(client_);
47 } 58 }
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
159 170
160 DCHECK(this_tiling->tile_size() == 171 DCHECK(this_tiling->tile_size() ==
161 client_->CalculateTileSize(this_tiling->tiling_size())) 172 client_->CalculateTileSize(this_tiling->tiling_size()))
162 << "tile_size: " << this_tiling->tile_size().ToString() 173 << "tile_size: " << this_tiling->tile_size().ToString()
163 << " tiling_size: " << this_tiling->tiling_size().ToString() 174 << " tiling_size: " << this_tiling->tiling_size().ToString()
164 << " CalculateTileSize: " 175 << " CalculateTileSize: "
165 << client_->CalculateTileSize(this_tiling->tiling_size()).ToString(); 176 << client_->CalculateTileSize(this_tiling->tiling_size()).ToString();
166 continue; 177 continue;
167 } 178 }
168 scoped_ptr<PictureLayerTiling> new_tiling = PictureLayerTiling::Create( 179 scoped_ptr<PictureLayerTiling> new_tiling = PictureLayerTiling::Create(
169 contents_scale, 180 contents_scale, new_layer_bounds, client_, max_tiles_for_interest_area_,
170 new_layer_bounds, 181 skewport_target_time_in_seconds_,
171 client_); 182 skewport_extrapolation_limit_in_content_pixels_);
172 new_tiling->set_resolution(other.tilings_[i]->resolution()); 183 new_tiling->set_resolution(other.tilings_[i]->resolution());
173 if (new_tiling->resolution() == HIGH_RESOLUTION) 184 if (new_tiling->resolution() == HIGH_RESOLUTION)
174 have_high_res_tiling = true; 185 have_high_res_tiling = true;
175 tilings_.push_back(new_tiling.Pass()); 186 tilings_.push_back(new_tiling.Pass());
176 } 187 }
177 tilings_.sort(LargestToSmallestScaleFunctor()); 188 tilings_.sort(LargestToSmallestScaleFunctor());
178 189
179 return have_high_res_tiling; 190 return have_high_res_tiling;
180 } 191 }
181 192
182 PictureLayerTiling* PictureLayerTilingSet::AddTiling( 193 PictureLayerTiling* PictureLayerTilingSet::AddTiling(
183 float contents_scale, 194 float contents_scale,
184 const gfx::Size& layer_bounds) { 195 const gfx::Size& layer_bounds) {
185 for (size_t i = 0; i < tilings_.size(); ++i) 196 for (size_t i = 0; i < tilings_.size(); ++i)
186 DCHECK_NE(tilings_[i]->contents_scale(), contents_scale); 197 DCHECK_NE(tilings_[i]->contents_scale(), contents_scale);
187 198
188 tilings_.push_back( 199 tilings_.push_back(PictureLayerTiling::Create(
189 PictureLayerTiling::Create(contents_scale, layer_bounds, client_)); 200 contents_scale, layer_bounds, client_, max_tiles_for_interest_area_,
201 skewport_target_time_in_seconds_,
202 skewport_extrapolation_limit_in_content_pixels_));
190 PictureLayerTiling* appended = tilings_.back(); 203 PictureLayerTiling* appended = tilings_.back();
191 204
192 tilings_.sort(LargestToSmallestScaleFunctor()); 205 tilings_.sort(LargestToSmallestScaleFunctor());
193 return appended; 206 return appended;
194 } 207 }
195 208
196 int PictureLayerTilingSet::NumHighResTilings() const { 209 int PictureLayerTilingSet::NumHighResTilings() const {
197 int num_high_res = 0; 210 int num_high_res = 0;
198 for (size_t i = 0; i < tilings_.size(); ++i) { 211 for (size_t i = 0; i < tilings_.size(); ++i) {
199 if (tilings_[i]->resolution() == HIGH_RESOLUTION) 212 if (tilings_[i]->resolution() == HIGH_RESOLUTION)
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
518 case LOWER_THAN_LOW_RES: 531 case LOWER_THAN_LOW_RES:
519 range = TilingRange(low_res_range.end, tilings_.size()); 532 range = TilingRange(low_res_range.end, tilings_.size());
520 break; 533 break;
521 } 534 }
522 535
523 DCHECK_LE(range.start, range.end); 536 DCHECK_LE(range.start, range.end);
524 return range; 537 return range;
525 } 538 }
526 539
527 } // namespace cc 540 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698