| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "platform/graphics/BitmapImageMetrics.h" | 5 #include "platform/graphics/BitmapImageMetrics.h" |
| 6 | 6 |
| 7 #include "public/platform/Platform.h" | 7 #include "platform/Histogram.h" |
| 8 #include "wtf/Threading.h" |
| 8 #include "wtf/text/WTFString.h" | 9 #include "wtf/text/WTFString.h" |
| 9 | 10 |
| 10 namespace blink { | 11 namespace blink { |
| 11 | 12 |
| 12 void BitmapImageMetrics::countDecodedImageType(const String& type) | 13 void BitmapImageMetrics::countDecodedImageType(const String& type) |
| 13 { | 14 { |
| 14 enum DecodedImageType { // Values synced with 'DecodedImageType' in src/tool
s/metrics/histograms/histograms.xml | 15 enum DecodedImageType { // Values synced with 'DecodedImageType' in src/tool
s/metrics/histograms/histograms.xml |
| 15 ImageUnknown = 0, | 16 ImageUnknown = 0, |
| 16 ImageJPEG = 1, | 17 ImageJPEG = 1, |
| 17 ImagePNG = 2, | 18 ImagePNG = 2, |
| 18 ImageGIF = 3, | 19 ImageGIF = 3, |
| 19 ImageWebP = 4, | 20 ImageWebP = 4, |
| 20 ImageICO = 5, | 21 ImageICO = 5, |
| 21 ImageBMP = 6, | 22 ImageBMP = 6, |
| 22 DecodedImageTypeEnumEnd = ImageBMP + 1 | 23 DecodedImageTypeEnumEnd = ImageBMP + 1 |
| 23 }; | 24 }; |
| 24 | 25 |
| 25 DecodedImageType decodedImageType = | 26 DecodedImageType decodedImageType = |
| 26 type == "jpg" ? ImageJPEG : | 27 type == "jpg" ? ImageJPEG : |
| 27 type == "png" ? ImagePNG : | 28 type == "png" ? ImagePNG : |
| 28 type == "gif" ? ImageGIF : | 29 type == "gif" ? ImageGIF : |
| 29 type == "webp" ? ImageWebP : | 30 type == "webp" ? ImageWebP : |
| 30 type == "ico" ? ImageICO : | 31 type == "ico" ? ImageICO : |
| 31 type == "bmp" ? ImageBMP : DecodedImageType::ImageUnknown; | 32 type == "bmp" ? ImageBMP : DecodedImageType::ImageUnknown; |
| 32 | 33 |
| 33 Platform::current()->histogramEnumeration("Blink.DecodedImageType", decodedI
mageType, DecodedImageTypeEnumEnd); | 34 DEFINE_THREAD_SAFE_STATIC_LOCAL(EnumerationHistogram, decodedImageTypeHistog
ram, new EnumerationHistogram("Blink.DecodedImageType", DecodedImageTypeEnumEnd)
); |
| 35 decodedImageTypeHistogram.count(decodedImageType); |
| 34 } | 36 } |
| 35 | 37 |
| 36 void BitmapImageMetrics::countImageOrientation(const ImageOrientationEnum orient
ation) | 38 void BitmapImageMetrics::countImageOrientation(const ImageOrientationEnum orient
ation) |
| 37 { | 39 { |
| 38 Platform::current()->histogramEnumeration("Blink.DecodedImage.Orientation",
orientation, ImageOrientationEnumEnd); | 40 DEFINE_THREAD_SAFE_STATIC_LOCAL(EnumerationHistogram, orientationHistogram,
new EnumerationHistogram("Blink.DecodedImage.Orientation", ImageOrientationEnumE
nd)); |
| 41 orientationHistogram.count(orientation); |
| 39 } | 42 } |
| 40 | 43 |
| 41 } // namespace blink | 44 } // namespace blink |
| OLD | NEW |