OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #ifndef CONTENT_BROWSER_TRACE_MESSAGE_FILTER_H_ | 5 #ifndef CONTENT_BROWSER_TRACE_MESSAGE_FILTER_H_ |
6 #define CONTENT_BROWSER_TRACE_MESSAGE_FILTER_H_ | 6 #define CONTENT_BROWSER_TRACE_MESSAGE_FILTER_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "content/browser/browser_message_filter.h" | 11 #include "content/browser/browser_message_filter.h" |
12 | 12 |
13 // This class sends and receives trace messages on the browser process. | 13 // This class sends and receives trace messages on the browser process. |
14 // See also: trace_controller.h | 14 // See also: trace_controller.h |
15 // See also: child_trace_message_filter.h | 15 // See also: child_trace_message_filter.h |
16 class TraceMessageFilter : public BrowserMessageFilter { | 16 class TraceMessageFilter : public BrowserMessageFilter { |
17 public: | 17 public: |
18 TraceMessageFilter(); | 18 TraceMessageFilter(); |
19 virtual ~TraceMessageFilter(); | 19 virtual ~TraceMessageFilter(); |
20 | 20 |
21 // BrowserMessageFilter override. | 21 // BrowserMessageFilter override. |
22 virtual void OnFilterAdded(IPC::Channel* channel); | 22 virtual void OnFilterAdded(IPC::Channel* channel) OVERRIDE; |
23 | 23 |
24 // BrowserMessageFilter implementation. | 24 // BrowserMessageFilter implementation. |
25 virtual void OnChannelClosing(); | 25 virtual void OnChannelClosing() OVERRIDE; |
26 virtual bool OnMessageReceived(const IPC::Message& message, | 26 virtual bool OnMessageReceived(const IPC::Message& message, |
27 bool* message_was_ok); | 27 bool* message_was_ok) OVERRIDE; |
28 | 28 |
29 void SendBeginTracing(const std::vector<std::string>& included_categories, | 29 void SendBeginTracing(const std::vector<std::string>& included_categories, |
30 const std::vector<std::string>& excluded_categories); | 30 const std::vector<std::string>& excluded_categories); |
31 void SendEndTracing(); | 31 void SendEndTracing(); |
32 void SendGetTraceBufferPercentFull(); | 32 void SendGetTraceBufferPercentFull(); |
33 | 33 |
34 private: | 34 private: |
35 // Message handlers. | 35 // Message handlers. |
36 void OnChildSupportsTracing(); | 36 void OnChildSupportsTracing(); |
37 void OnEndTracingAck(const std::vector<std::string>& known_categories); | 37 void OnEndTracingAck(const std::vector<std::string>& known_categories); |
38 void OnTraceBufferFull(); | 38 void OnTraceBufferFull(); |
39 void OnTraceBufferPercentFullReply(float percent_full); | 39 void OnTraceBufferPercentFullReply(float percent_full); |
40 void OnTraceDataCollected(const std::string& data); | 40 void OnTraceDataCollected(const std::string& data); |
41 | 41 |
42 // ChildTraceMessageFilter exists: | 42 // ChildTraceMessageFilter exists: |
43 bool has_child_; | 43 bool has_child_; |
44 | 44 |
45 // Awaiting ack for previously sent SendEndTracing | 45 // Awaiting ack for previously sent SendEndTracing |
46 bool is_awaiting_end_ack_; | 46 bool is_awaiting_end_ack_; |
47 bool is_awaiting_bpf_ack_; | 47 bool is_awaiting_bpf_ack_; |
48 | 48 |
49 DISALLOW_COPY_AND_ASSIGN(TraceMessageFilter); | 49 DISALLOW_COPY_AND_ASSIGN(TraceMessageFilter); |
50 }; | 50 }; |
51 | 51 |
52 #endif // CONTENT_BROWSER_TRACE_MESSAGE_FILTER_H_ | 52 #endif // CONTENT_BROWSER_TRACE_MESSAGE_FILTER_H_ |
53 | 53 |
OLD | NEW |