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

Unified Diff: chrome/browser/metrics/gpu_metrics_provider.cc

Issue 523273003: Moves GPUMetricsProvider to //components/metrics. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/metrics/gpu_metrics_provider.cc
diff --git a/chrome/browser/metrics/gpu_metrics_provider.cc b/chrome/browser/metrics/gpu_metrics_provider.cc
deleted file mode 100644
index 34b8a39837296367934b909ccfc7da6b8fe74c41..0000000000000000000000000000000000000000
--- a/chrome/browser/metrics/gpu_metrics_provider.cc
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/metrics/gpu_metrics_provider.h"
-
-#include "components/metrics/proto/system_profile.pb.h"
-#include "content/public/browser/gpu_data_manager.h"
-#include "gpu/config/gpu_info.h"
-#include "ui/gfx/screen.h"
-
-#if defined(OS_WIN)
-
-#include <windows.h>
-
-namespace {
-
-struct ScreenDPIInformation {
- double max_dpi_x;
- double max_dpi_y;
-};
-
-// Called once for each connected monitor.
-BOOL CALLBACK GetMonitorDPICallback(HMONITOR, HDC hdc, LPRECT, LPARAM dwData) {
- const double kMillimetersPerInch = 25.4;
- ScreenDPIInformation* screen_info =
- reinterpret_cast<ScreenDPIInformation*>(dwData);
- // Size of screen, in mm.
- DWORD size_x = GetDeviceCaps(hdc, HORZSIZE);
- DWORD size_y = GetDeviceCaps(hdc, VERTSIZE);
- double dpi_x = (size_x > 0) ?
- GetDeviceCaps(hdc, HORZRES) / (size_x / kMillimetersPerInch) : 0;
- double dpi_y = (size_y > 0) ?
- GetDeviceCaps(hdc, VERTRES) / (size_y / kMillimetersPerInch) : 0;
- screen_info->max_dpi_x = std::max(dpi_x, screen_info->max_dpi_x);
- screen_info->max_dpi_y = std::max(dpi_y, screen_info->max_dpi_y);
- return TRUE;
-}
-
-void WriteScreenDPIInformationProto(
- metrics::SystemProfileProto::Hardware* hardware) {
- HDC desktop_dc = GetDC(NULL);
- if (desktop_dc) {
- ScreenDPIInformation si = {0, 0};
- if (EnumDisplayMonitors(desktop_dc, NULL, GetMonitorDPICallback,
- reinterpret_cast<LPARAM>(&si))) {
- hardware->set_max_dpi_x(si.max_dpi_x);
- hardware->set_max_dpi_y(si.max_dpi_y);
- }
- ReleaseDC(GetDesktopWindow(), desktop_dc);
- }
-}
-
-} // namespace
-
-#endif // defined(OS_WIN)
-
-GPUMetricsProvider::GPUMetricsProvider() {
-}
-
-GPUMetricsProvider::~GPUMetricsProvider() {
-}
-
-void GPUMetricsProvider::ProvideSystemProfileMetrics(
- metrics::SystemProfileProto* system_profile_proto) {
- metrics::SystemProfileProto::Hardware* hardware =
- system_profile_proto->mutable_hardware();
-
- const gpu::GPUInfo& gpu_info =
- content::GpuDataManager::GetInstance()->GetGPUInfo();
- metrics::SystemProfileProto::Hardware::Graphics* gpu =
- hardware->mutable_gpu();
- gpu->set_vendor_id(gpu_info.gpu.vendor_id);
- gpu->set_device_id(gpu_info.gpu.device_id);
- gpu->set_driver_version(gpu_info.driver_version);
- gpu->set_driver_date(gpu_info.driver_date);
- metrics::SystemProfileProto::Hardware::Graphics::PerformanceStatistics*
- gpu_performance = gpu->mutable_performance_statistics();
- gpu_performance->set_graphics_score(gpu_info.performance_stats.graphics);
- gpu_performance->set_gaming_score(gpu_info.performance_stats.gaming);
- gpu_performance->set_overall_score(gpu_info.performance_stats.overall);
- gpu->set_gl_vendor(gpu_info.gl_vendor);
- gpu->set_gl_renderer(gpu_info.gl_renderer);
-
- const gfx::Size display_size = GetScreenSize();
- hardware->set_primary_screen_width(display_size.width());
- hardware->set_primary_screen_height(display_size.height());
- hardware->set_primary_screen_scale_factor(GetScreenDeviceScaleFactor());
- hardware->set_screen_count(GetScreenCount());
-
-#if defined(OS_WIN)
- WriteScreenDPIInformationProto(hardware);
-#endif
-}
-
-gfx::Size GPUMetricsProvider::GetScreenSize() const {
- return gfx::Screen::GetNativeScreen()->GetPrimaryDisplay().GetSizeInPixel();
-}
-
-float GPUMetricsProvider::GetScreenDeviceScaleFactor() const {
- return gfx::Screen::GetNativeScreen()->
- GetPrimaryDisplay().device_scale_factor();
-}
-
-int GPUMetricsProvider::GetScreenCount() const {
- // TODO(scottmg): NativeScreen maybe wrong. http://crbug.com/133312
- return gfx::Screen::GetNativeScreen()->GetNumDisplays();
-}
« no previous file with comments | « chrome/browser/metrics/gpu_metrics_provider.h ('k') | chrome/browser/metrics/gpu_metrics_provider_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698