OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 // Common IPC messages used for child processes. | 5 // Common IPC messages used for child processes. |
6 // Multiply-included message file, hence no include guard. | 6 // Multiply-included message file, hence no include guard. |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "base/memory/shared_memory.h" | 11 #include "base/memory/shared_memory.h" |
12 #include "base/tracked_objects.h" | 12 #include "base/tracked_objects.h" |
13 #include "base/values.h" | 13 #include "base/values.h" |
14 #include "content/common/content_export.h" | 14 #include "content/common/content_export.h" |
15 #include "ipc/ipc_message_macros.h" | 15 #include "ipc/ipc_message_macros.h" |
| 16 #include "ui/gfx/gpu_memory_buffer.h" |
16 | 17 |
17 IPC_ENUM_TRAITS(tracked_objects::ThreadData::Status) | 18 IPC_ENUM_TRAITS(tracked_objects::ThreadData::Status) |
18 | 19 |
19 IPC_STRUCT_TRAITS_BEGIN(tracked_objects::LocationSnapshot) | 20 IPC_STRUCT_TRAITS_BEGIN(tracked_objects::LocationSnapshot) |
20 IPC_STRUCT_TRAITS_MEMBER(file_name) | 21 IPC_STRUCT_TRAITS_MEMBER(file_name) |
21 IPC_STRUCT_TRAITS_MEMBER(function_name) | 22 IPC_STRUCT_TRAITS_MEMBER(function_name) |
22 IPC_STRUCT_TRAITS_MEMBER(line_number) | 23 IPC_STRUCT_TRAITS_MEMBER(line_number) |
23 IPC_STRUCT_TRAITS_END() | 24 IPC_STRUCT_TRAITS_END() |
24 | 25 |
25 IPC_STRUCT_TRAITS_BEGIN(tracked_objects::BirthOnThreadSnapshot) | 26 IPC_STRUCT_TRAITS_BEGIN(tracked_objects::BirthOnThreadSnapshot) |
(...skipping 21 matching lines...) Expand all Loading... |
47 IPC_STRUCT_TRAITS_MEMBER(parent) | 48 IPC_STRUCT_TRAITS_MEMBER(parent) |
48 IPC_STRUCT_TRAITS_MEMBER(child) | 49 IPC_STRUCT_TRAITS_MEMBER(child) |
49 IPC_STRUCT_TRAITS_END() | 50 IPC_STRUCT_TRAITS_END() |
50 | 51 |
51 IPC_STRUCT_TRAITS_BEGIN(tracked_objects::ProcessDataSnapshot) | 52 IPC_STRUCT_TRAITS_BEGIN(tracked_objects::ProcessDataSnapshot) |
52 IPC_STRUCT_TRAITS_MEMBER(tasks) | 53 IPC_STRUCT_TRAITS_MEMBER(tasks) |
53 IPC_STRUCT_TRAITS_MEMBER(descendants) | 54 IPC_STRUCT_TRAITS_MEMBER(descendants) |
54 IPC_STRUCT_TRAITS_MEMBER(process_id) | 55 IPC_STRUCT_TRAITS_MEMBER(process_id) |
55 IPC_STRUCT_TRAITS_END() | 56 IPC_STRUCT_TRAITS_END() |
56 | 57 |
| 58 IPC_ENUM_TRAITS(gfx::GpuMemoryBufferType) |
| 59 |
| 60 IPC_STRUCT_TRAITS_BEGIN(gfx::GpuMemoryBufferHandle) |
| 61 IPC_STRUCT_TRAITS_MEMBER(type) |
| 62 IPC_STRUCT_TRAITS_MEMBER(handle) |
| 63 IPC_STRUCT_TRAITS_END() |
| 64 |
57 #undef IPC_MESSAGE_EXPORT | 65 #undef IPC_MESSAGE_EXPORT |
58 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT | 66 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT |
59 | 67 |
60 #define IPC_MESSAGE_START ChildProcessMsgStart | 68 #define IPC_MESSAGE_START ChildProcessMsgStart |
61 | 69 |
62 // Messages sent from the browser to the child process. | 70 // Messages sent from the browser to the child process. |
63 | 71 |
64 // Sent in response to ChildProcessHostMsg_ShutdownRequest to tell the child | 72 // Sent in response to ChildProcessHostMsg_ShutdownRequest to tell the child |
65 // process that it's safe to shutdown. | 73 // process that it's safe to shutdown. |
66 IPC_MESSAGE_CONTROL0(ChildProcessMsg_Shutdown) | 74 IPC_MESSAGE_CONTROL0(ChildProcessMsg_Shutdown) |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 // fill in and pass back to the browser. | 139 // fill in and pass back to the browser. |
132 IPC_SYNC_MESSAGE_CONTROL1_1(ChildProcessHostMsg_SyncAllocateSharedMemory, | 140 IPC_SYNC_MESSAGE_CONTROL1_1(ChildProcessHostMsg_SyncAllocateSharedMemory, |
133 uint32 /* buffer size */, | 141 uint32 /* buffer size */, |
134 base::SharedMemoryHandle) | 142 base::SharedMemoryHandle) |
135 | 143 |
136 #if defined(USE_TCMALLOC) | 144 #if defined(USE_TCMALLOC) |
137 // Reply to ChildProcessMsg_GetTcmallocStats. | 145 // Reply to ChildProcessMsg_GetTcmallocStats. |
138 IPC_MESSAGE_CONTROL1(ChildProcessHostMsg_TcmallocStats, | 146 IPC_MESSAGE_CONTROL1(ChildProcessHostMsg_TcmallocStats, |
139 std::string /* output */) | 147 std::string /* output */) |
140 #endif | 148 #endif |
| 149 |
| 150 // Asks the browser to create a gpu memory buffer. |
| 151 IPC_SYNC_MESSAGE_CONTROL1_1(ChildProcessHostMsg_SyncAllocateGpuMemoryBuffer, |
| 152 uint32 /* buffer size */, |
| 153 gfx::GpuMemoryBufferHandle) |
OLD | NEW |