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

Unified Diff: cc/rendering_stats.h

Issue 11280210: Move RenderStats enumeration out of gpu_benchmarking_extension. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month 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
« no previous file with comments | « no previous file | cc/rendering_stats.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/rendering_stats.h
diff --git a/cc/rendering_stats.h b/cc/rendering_stats.h
index d26cc805256efcc64f781dd27e5ab9e0f4f80e2b..61112504e3756094aba2a9054fe589949247c34c 100644
--- a/cc/rendering_stats.h
+++ b/cc/rendering_stats.h
@@ -6,6 +6,7 @@
#define CC_RENDERING_STATS_H_
#include "base/basictypes.h"
+#include "base/time.h"
#include "cc/cc_export.h"
namespace cc {
@@ -24,8 +25,29 @@ struct CC_EXPORT RenderingStats {
int64 numImplThreadScrolls;
int64 numMainThreadScrolls;
int64 numLayersDrawn;
+ // Note: when adding new members, please remember to update enumerateFields
+ // in rendering_stats.cc.
RenderingStats();
+
+ // In conjunction with enumerateFields, this allows the embedder to
+ // enumerate the values in this structure without
+ // having to embed references to its specific member variables. This
+ // simplifies the addition of new fields to this type.
+ class Enumerator {
+ public:
+ virtual void AddInt64(const char* name, int64 value) = 0;
+ virtual void AddDouble(const char* name, double value) = 0;
+ virtual void AddInt(const char* name, int value) = 0;
+ virtual void AddTimeDeltaInSecondsF(const char* name,
+ const base::TimeDelta& value) = 0;
+
+ protected:
+ virtual ~Enumerator() { }
+ };
+
+ // Outputs the fields in this structure to the provided enumerator.
+ void EnumerateFields(Enumerator* enumerator) const;
};
} // namespace cc
« no previous file with comments | « no previous file | cc/rendering_stats.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698