OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 // Histogram is an object that aggregates statistics, and can summarize them in | 5 // Histogram is an object that aggregates statistics, and can summarize them in |
6 // various forms, including ASCII graphical, HTML, and numerically (as a | 6 // various forms, including ASCII graphical, HTML, and numerically (as a |
7 // vector of numbers corresponding to each of the aggregating buckets). | 7 // vector of numbers corresponding to each of the aggregating buckets). |
8 | 8 |
9 // It supports calls to accumulate either time intervals (which are processed | 9 // It supports calls to accumulate either time intervals (which are processed |
10 // as integral number of milliseconds), or arbitrary integral units. | 10 // as integral number of milliseconds), or arbitrary integral units. |
(...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
396 // Check to see if bucket ranges, counts and tallies in the snapshot are | 396 // Check to see if bucket ranges, counts and tallies in the snapshot are |
397 // consistent with the bucket ranges and checksums in our histogram. This can | 397 // consistent with the bucket ranges and checksums in our histogram. This can |
398 // produce a false-alarm if a race occurred in the reading of the data during | 398 // produce a false-alarm if a race occurred in the reading of the data during |
399 // a SnapShot process, but should otherwise be false at all times (unless we | 399 // a SnapShot process, but should otherwise be false at all times (unless we |
400 // have memory over-writes, or DRAM failures). | 400 // have memory over-writes, or DRAM failures). |
401 virtual Inconsistencies FindCorruption(const SampleSet& snapshot) const; | 401 virtual Inconsistencies FindCorruption(const SampleSet& snapshot) const; |
402 | 402 |
403 //---------------------------------------------------------------------------- | 403 //---------------------------------------------------------------------------- |
404 // Accessors for factory constuction, serialization and testing. | 404 // Accessors for factory constuction, serialization and testing. |
405 //---------------------------------------------------------------------------- | 405 //---------------------------------------------------------------------------- |
406 virtual ClassType histogram_type() const { return HISTOGRAM; } | 406 virtual ClassType histogram_type() const; |
407 const std::string& histogram_name() const { return histogram_name_; } | 407 const std::string& histogram_name() const { return histogram_name_; } |
408 Sample declared_min() const { return declared_min_; } | 408 Sample declared_min() const { return declared_min_; } |
409 Sample declared_max() const { return declared_max_; } | 409 Sample declared_max() const { return declared_max_; } |
410 virtual Sample ranges(size_t i) const { return ranges_[i];} | 410 virtual Sample ranges(size_t i) const; |
411 Sample range_checksum() const { return range_checksum_; } | 411 Sample range_checksum() const { return range_checksum_; } |
412 virtual size_t bucket_count() const { return bucket_count_; } | 412 virtual size_t bucket_count() const; |
413 // Snapshot the current complete set of sample data. | 413 // Snapshot the current complete set of sample data. |
414 // Override with atomic/locked snapshot if needed. | 414 // Override with atomic/locked snapshot if needed. |
415 virtual void SnapshotSample(SampleSet* sample) const; | 415 virtual void SnapshotSample(SampleSet* sample) const; |
416 | 416 |
417 virtual bool HasConstructorArguments(Sample minimum, Sample maximum, | 417 virtual bool HasConstructorArguments(Sample minimum, Sample maximum, |
418 size_t bucket_count); | 418 size_t bucket_count); |
419 | 419 |
420 virtual bool HasConstructorTimeDeltaArguments(TimeDelta minimum, | 420 virtual bool HasConstructorTimeDeltaArguments(TimeDelta minimum, |
421 TimeDelta maximum, | 421 TimeDelta maximum, |
422 size_t bucket_count); | 422 size_t bucket_count); |
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
685 | 685 |
686 // Dump all known histograms to log. | 686 // Dump all known histograms to log. |
687 static bool dump_on_exit_; | 687 static bool dump_on_exit_; |
688 | 688 |
689 DISALLOW_COPY_AND_ASSIGN(StatisticsRecorder); | 689 DISALLOW_COPY_AND_ASSIGN(StatisticsRecorder); |
690 }; | 690 }; |
691 | 691 |
692 } // namespace base | 692 } // namespace base |
693 | 693 |
694 #endif // BASE_METRICS_HISTOGRAM_H_ | 694 #endif // BASE_METRICS_HISTOGRAM_H_ |
OLD | NEW |