| 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 CONTENT_COMMON_GPU_GPU_RENDERING_STATS_H_ | 5 #ifndef CONTENT_COMMON_GPU_GPU_RENDERING_STATS_H_ |
| 6 #define CONTENT_COMMON_GPU_GPU_RENDERING_STATS_H_ | 6 #define CONTENT_COMMON_GPU_GPU_RENDERING_STATS_H_ |
| 7 | 7 |
| 8 #include "base/time.h" | 8 #include "base/time.h" |
| 9 #include "content/common/content_export.h" | 9 #include "content/common/content_export.h" |
| 10 | 10 |
| 11 namespace content { | 11 namespace content { |
| 12 | 12 |
| 13 struct CONTENT_EXPORT GpuRenderingStats { | 13 struct CONTENT_EXPORT GpuRenderingStats { |
| 14 GpuRenderingStats(); | 14 GpuRenderingStats(); |
| 15 ~GpuRenderingStats(); | 15 ~GpuRenderingStats(); |
| 16 | 16 |
| 17 int global_texture_upload_count; | 17 int global_texture_upload_count; |
| 18 base::TimeDelta global_total_texture_upload_time; | 18 base::TimeDelta global_total_texture_upload_time; |
| 19 int texture_upload_count; | 19 int texture_upload_count; |
| 20 base::TimeDelta total_texture_upload_time; | 20 base::TimeDelta total_texture_upload_time; |
| 21 base::TimeDelta global_total_processing_commands_time; | 21 base::TimeDelta global_total_processing_commands_time; |
| 22 base::TimeDelta total_processing_commands_time; | 22 base::TimeDelta total_processing_commands_time; |
| 23 |
| 24 // In conjunction with enumerateFields, this allows the embedder to |
| 25 // enumerate the values in this structure without |
| 26 // having to embed references to its specific member variables. This |
| 27 // simplifies the addition of new fields to this type. |
| 28 class Enumerator { |
| 29 public: |
| 30 virtual void addInt(const char* name, int value) = 0; |
| 31 virtual void addTimeDelta(const char* name, base::TimeDelta value) = 0; |
| 32 protected: |
| 33 virtual ~Enumerator() { } |
| 34 }; |
| 35 |
| 36 // Outputs the fields in this structure to the provided enumerator. |
| 37 void enumerateFields(Enumerator* enumerator) const { |
| 38 enumerator->addInt("globalTextureUploadCount", global_texture_upload_count); |
| 39 enumerator->addTimeDelta("totalTextureUploadTime", |
| 40 total_texture_upload_time); |
| 41 enumerator->addInt("textureUploadCount", texture_upload_count); |
| 42 enumerator->addTimeDelta("globalTotalProcessingCommandsTime", |
| 43 global_total_processing_commands_time); |
| 44 enumerator->addTimeDelta("totalProcessingCommandsTime", |
| 45 total_processing_commands_time); |
| 46 } |
| 23 }; | 47 }; |
| 24 | 48 |
| 25 } // namespace content | 49 } // namespace content |
| 26 | 50 |
| 27 #endif // CONTENT_PUBLIC_COMMON_RENDERING_STATS_H_ | 51 #endif // CONTENT_PUBLIC_COMMON_RENDERING_STATS_H_ |
| OLD | NEW |