- add sources.
[platform/framework/web/crosswalk.git] / src / components / tracing / tracing_messages.h
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 // Multiply-included message header, no traditional include guard.
6 #include <string>
7 #include <vector>
8
9 #include "base/basictypes.h"
10 #include "base/sync_socket.h"
11 #include "ipc/ipc_channel_handle.h"
12 #include "ipc/ipc_message_macros.h"
13 #include "ipc/ipc_message_utils.h"
14 #include "ipc/ipc_platform_file.h"
15
16 #define IPC_MESSAGE_START TracingMsgStart
17
18 // Sent to all child processes to enable trace event recording.
19 IPC_MESSAGE_CONTROL4(TracingMsg_BeginTracing,
20                      std::string /*  category_filter_str */,
21                      base::TimeTicks /* browser_time */,
22                      int /* base::debug::TraceLog::Options */,
23                      bool /* tracing_startup */)
24
25 // Sent to all child processes to disable trace event recording.
26 IPC_MESSAGE_CONTROL0(TracingMsg_EndTracing)
27
28 // Sent to all child processes to start monitoring.
29 IPC_MESSAGE_CONTROL3(TracingMsg_EnableMonitoring,
30                      std::string /*  category_filter_str */,
31                      base::TimeTicks /* browser_time */,
32                      int /* base::debug::TraceLog::Options */)
33
34 // Sent to all child processes to stop monitoring..
35 IPC_MESSAGE_CONTROL0(TracingMsg_DisableMonitoring)
36
37 // Sent to all child processes to capture the current monitorint snapshot.
38 IPC_MESSAGE_CONTROL0(TracingMsg_CaptureMonitoringSnapshot)
39
40 // Sent to all child processes to get trace buffer fullness.
41 IPC_MESSAGE_CONTROL0(TracingMsg_GetTraceBufferPercentFull)
42
43 // Sent to all child processes to set watch event.
44 IPC_MESSAGE_CONTROL2(TracingMsg_SetWatchEvent,
45                      std::string /* category_name */,
46                      std::string /* event_name */)
47
48 // Sent to all child processes to clear watch event.
49 IPC_MESSAGE_CONTROL0(TracingMsg_CancelWatchEvent)
50
51 // Notify the browser that this child process supports tracing.
52 IPC_MESSAGE_CONTROL0(TracingHostMsg_ChildSupportsTracing)
53
54 // Reply from child processes acking TracingMsg_EndTracing.
55 IPC_MESSAGE_CONTROL1(TracingHostMsg_EndTracingAck,
56                      std::vector<std::string> /* known_categories */)
57
58 // Reply from child processes acking TracingMsg_CaptureMonitoringSnapshot.
59 IPC_MESSAGE_CONTROL0(TracingHostMsg_CaptureMonitoringSnapshotAck)
60
61 // Sent if the trace buffer becomes full.
62 IPC_MESSAGE_CONTROL1(TracingHostMsg_TraceNotification,
63                      int /* base::debug::TraceLog::Notification */)
64
65 // Child processes send back trace data in JSON chunks.
66 IPC_MESSAGE_CONTROL1(TracingHostMsg_TraceDataCollected,
67                      std::string /*json trace data*/)
68
69 // Child processes send back trace data of the current monitoring
70 // in JSON chunks.
71 IPC_MESSAGE_CONTROL1(TracingHostMsg_MonitoringTraceDataCollected,
72                      std::string /*json trace data*/)
73
74 // Reply to TracingMsg_GetTraceBufferPercentFull.
75 IPC_MESSAGE_CONTROL1(TracingHostMsg_TraceBufferPercentFullReply,
76                      float /*trace buffer percent full*/)
77