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
3// found in the LICENSE file.
4
5#ifndef CONTENT_COMMON_GPU_GPU_RENDERING_STATS_H_
6#define CONTENT_COMMON_GPU_GPU_RENDERING_STATS_H_
7
8#include "base/time/time.h"
9#include "cc/debug/rendering_stats.h"
10#include "content/common/content_export.h"
11
12namespace content {
13
14struct CONTENT_EXPORT GpuRenderingStats {
15  GpuRenderingStats();
16  ~GpuRenderingStats();
17
18  int global_texture_upload_count;
19  base::TimeDelta global_total_texture_upload_time;
20  int texture_upload_count;
21  base::TimeDelta total_texture_upload_time;
22  base::TimeDelta global_total_processing_commands_time;
23  base::TimeDelta total_processing_commands_time;
24  int64 global_video_memory_bytes_allocated;
25  // Note: when adding new members, please remember to update enumerateFields
26  // in gpu_rendering_stats.cc.
27
28  // Outputs the fields in this structure to the provided enumerator.
29  void EnumerateFields(cc::RenderingStats::Enumerator* enumerator) const;
30};
31
32}  // namespace content
33
34#endif  // CONTENT_PUBLIC_COMMON_RENDERING_STATS_H_
35