| // Copyright 2017 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 BASE_METRICS_DUMMY_HISTOGRAM_H_ |
| #define BASE_METRICS_DUMMY_HISTOGRAM_H_ |
| |
| #include <memory> |
| #include <string> |
| |
| #include "base/base_export.h" |
| #include "base/metrics/histogram_base.h" |
| #include "base/no_destructor.h" |
| #include "starboard/types.h" |
| |
| namespace base { |
| |
| // DummyHistogram is used for mocking histogram objects for histograms that |
| // shouldn't be recorded. It doesn't do any actual processing. |
| class BASE_EXPORT DummyHistogram : public HistogramBase { |
| public: |
| static DummyHistogram* GetInstance(); |
| |
| // HistogramBase: |
| void CheckName(const StringPiece& name) const override {} |
| uint64_t name_hash() const override; |
| HistogramType GetHistogramType() const override; |
| bool HasConstructionArguments(Sample expected_minimum, |
| Sample expected_maximum, |
| uint32_t expected_bucket_count) const override; |
| void Add(Sample value) override {} |
| void AddCount(Sample value, int count) override {} |
| void AddSamples(const HistogramSamples& samples) override {} |
| bool AddSamplesFromPickle(PickleIterator* iter) override; |
| std::unique_ptr<HistogramSamples> SnapshotSamples() const override; |
| std::unique_ptr<HistogramSamples> SnapshotDelta() override; |
| std::unique_ptr<HistogramSamples> SnapshotFinalDelta() const override; |
| void WriteHTMLGraph(std::string* output) const override {} |
| void WriteAscii(std::string* output) const override {} |
| |
| protected: |
| // HistogramBase: |
| void SerializeInfoImpl(Pickle* pickle) const override {} |
| void GetParameters(DictionaryValue* params) const override {} |
| void GetCountAndBucketData(Count* count, |
| int64_t* sum, |
| ListValue* buckets) const override {} |
| |
| private: |
| friend class NoDestructor<DummyHistogram>; |
| |
| DummyHistogram() : HistogramBase("dummy_histogram") {} |
| ~DummyHistogram() override {} |
| |
| DISALLOW_COPY_AND_ASSIGN(DummyHistogram); |
| }; |
| |
| } // namespace base |
| |
| #endif // BASE_METRICS_DUMMY_HISTOGRAM_H_ |