OLD | NEW |
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 #ifndef CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ | 5 #ifndef CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ |
6 #define CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ | 6 #define CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "ui/base/layout.h" | 10 #include "ui/base/layout.h" |
11 | 11 |
12 class SkBitmap; | 12 class SkBitmap; |
13 | 13 |
14 namespace gfx { | 14 namespace gfx { |
15 class ImageSkia; | 15 class ImageSkia; |
16 } | 16 } |
17 | 17 |
18 // Takes a list of all bitmaps found in a .ico file, and creates an | 18 // Takes a list of all bitmaps found in a .ico file, and creates an |
19 // ImageSkia that's desired_size x desired_size pixels big. This | 19 // ImageSkia that's desired_size x desired_size pixels big. This |
20 // function adds a representation at every desired scale factor. | 20 // function adds a representation at every desired scale factor. |
21 // If desired_size is 0, the largest bitmap is returned unmodified. | 21 // If desired_size is 0, the largest bitmap is returned unmodified. |
| 22 // If score is non-NULL, it receive a score between 0 (bad) and 1 (good) |
| 23 // that describes how well |bitmaps| were able to produce an image at |
| 24 // |desired_size| for |scale_factors|. |
| 25 // The score is arbitrary, but it's best for exact size matches, |
| 26 // and gets worse the more resampling needs to happen.. |
22 gfx::ImageSkia SelectFaviconFrames( | 27 gfx::ImageSkia SelectFaviconFrames( |
23 const std::vector<SkBitmap>& bitmaps, | 28 const std::vector<SkBitmap>& bitmaps, |
24 const std::vector<ui::ScaleFactor>& scale_factors, | 29 const std::vector<ui::ScaleFactor>& scale_factors, |
25 int desired_size); | 30 int desired_size, |
| 31 float* score); |
26 | 32 |
27 #endif // CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ | 33 #endif // CHROME_BROWSER_FAVICON_SELECT_FAVICON_FRAMES_H_ |
OLD | NEW |