Index: components/metrics/export/crash_sample.h |
diff --git a/components/metrics/export/crash_sample.h b/components/metrics/export/crash_sample.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..50b2ffb463963051e86e74bcdb36da6a4b197588 |
--- /dev/null |
+++ b/components/metrics/export/crash_sample.h |
@@ -0,0 +1,36 @@ |
+// 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. |
+ |
+#ifndef COMPONENTS_METRICS_EXPORT_CRASH_SAMPLE_H_ |
+#define COMPONENTS_METRICS_EXPORT_CRASH_SAMPLE_H_ |
+ |
+#include <string> |
+ |
+#include "base/base_export.h" |
+#include "base/compiler_specific.h" |
+#include "components/metrics/export/metric_sample.h" |
+ |
+namespace metrics { |
+ |
+// Represent a crash event described by a simple name. |
+class BASE_EXPORT CrashSample : public MetricSample { |
+ public: |
+ explicit CrashSample(const std::string& crashname); |
+ virtual ~CrashSample(); |
+ |
+ // Produce a serialized version of the crash. |
+ // Format: crash\0|name_|\0 |
+ virtual std::string ToString() const OVERRIDE; |
+ |
+ // Return a CrashSample object representing the serialized crash if possible. |
+ // If the deserialization fails, returns NULL. |
+ static CrashSample* ReadCrash(const std::string& crash_serialized); |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(CrashSample); |
+}; |
+ |
+} // namespace metrics |
+ |
+#endif // COMPONENTS_METRICS_EXPORT_CRASH_SAMPLE_H_ |