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 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_BROWSER_HISTOGRAM_SUBSCRIBER_H_ 6 #define CONTENT_BROWSER_HISTOGRAM_SUBSCRIBER_H_ 7 8 #include <string> 9 #include <vector> 10 11 namespace content { 12 13 // Objects interested in receiving histograms derive from HistogramSubscriber. 14 class HistogramSubscriber { 15 public: 16 virtual ~HistogramSubscriber() {} 17 18 // Send number of pending processes to subscriber. |end| is set to true if it 19 // is the last time. This is called on the UI thread. 20 virtual void OnPendingProcesses(int sequence_number, 21 int pending_processes, 22 bool end) = 0; 23 24 // Send |histogram| back to subscriber. 25 // This is called on the UI thread. 26 virtual void OnHistogramDataCollected( 27 int sequence_number, 28 const std::vector<std::string>& pickled_histograms) = 0; 29 }; 30 31 } // namespace content 32 33 #endif // CONTENT_BROWSER_HISTOGRAM_SUBSCRIBER_H_ 34