Updates version of android sdk and api installed and creates ARM and x86 AVD's.
[chromium-blink-merge.git] / ppapi / proxy / ppapi_messages.h
blob69005e544d8d6e9522de1ff067b055ce963fd9b3
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.
5 // Multiply-included message header, no traditional include guard.
6 #include <string>
7 #include <vector>
9 #include "base/basictypes.h"
10 #include "base/file_path.h"
11 #include "base/process.h"
12 #include "base/shared_memory.h"
13 #include "base/string16.h"
14 #include "base/sync_socket.h"
15 #include "gpu/command_buffer/common/command_buffer.h"
16 #include "gpu/ipc/gpu_command_buffer_traits.h"
17 #include "ipc/ipc_channel_handle.h"
18 #include "ipc/ipc_message_macros.h"
19 #include "ipc/ipc_message_utils.h"
20 #include "ipc/ipc_platform_file.h"
21 #include "ppapi/c/dev/pp_video_capture_dev.h"
22 #include "ppapi/c/dev/pp_video_dev.h"
23 #include "ppapi/c/dev/ppb_text_input_dev.h"
24 #include "ppapi/c/dev/ppp_printing_dev.h"
25 #include "ppapi/c/pp_bool.h"
26 #include "ppapi/c/pp_file_info.h"
27 #include "ppapi/c/pp_instance.h"
28 #include "ppapi/c/pp_module.h"
29 #include "ppapi/c/pp_point.h"
30 #include "ppapi/c/pp_rect.h"
31 #include "ppapi/c/pp_resource.h"
32 #include "ppapi/c/pp_size.h"
33 #include "ppapi/c/pp_time.h"
34 #include "ppapi/c/private/ppb_host_resolver_private.h"
35 #include "ppapi/c/private/ppb_net_address_private.h"
36 #include "ppapi/c/private/ppb_tcp_socket_private.h"
37 #include "ppapi/c/private/ppp_flash_browser_operations.h"
38 #include "ppapi/proxy/ppapi_param_traits.h"
39 #include "ppapi/proxy/ppapi_proxy_export.h"
40 #include "ppapi/proxy/resource_message_params.h"
41 #include "ppapi/proxy/serialized_flash_menu.h"
42 #include "ppapi/proxy/serialized_structs.h"
43 #include "ppapi/shared_impl/ppapi_preferences.h"
44 #include "ppapi/shared_impl/ppb_device_ref_shared.h"
45 #include "ppapi/shared_impl/ppb_input_event_shared.h"
46 #include "ppapi/shared_impl/ppb_network_list_private_shared.h"
47 #include "ppapi/shared_impl/ppb_url_request_info_shared.h"
48 #include "ppapi/shared_impl/ppb_view_shared.h"
49 #include "ppapi/shared_impl/ppp_flash_browser_operations_shared.h"
50 #include "ppapi/shared_impl/private/ppb_host_resolver_shared.h"
51 #include "ppapi/shared_impl/private/ppb_x509_certificate_private_shared.h"
53 #undef IPC_MESSAGE_EXPORT
54 #define IPC_MESSAGE_EXPORT PPAPI_PROXY_EXPORT
56 #define IPC_MESSAGE_START PpapiMsgStart
58 IPC_ENUM_TRAITS(PP_DeviceType_Dev)
59 IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_Permission)
60 IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_SettingType)
61 IPC_ENUM_TRAITS(PP_InputEvent_MouseButton)
62 IPC_ENUM_TRAITS(PP_InputEvent_Type)
63 IPC_ENUM_TRAITS(PP_NetAddressFamily_Private)
64 IPC_ENUM_TRAITS(PP_NetworkListType_Private)
65 IPC_ENUM_TRAITS(PP_NetworkListState_Private)
66 IPC_ENUM_TRAITS(PP_PrintOrientation_Dev)
67 IPC_ENUM_TRAITS(PP_PrintOutputFormat_Dev)
68 IPC_ENUM_TRAITS(PP_PrintScalingOption_Dev)
69 IPC_ENUM_TRAITS(PP_TextInput_Type)
70 IPC_ENUM_TRAITS(PP_VideoDecodeError_Dev)
71 IPC_ENUM_TRAITS(PP_VideoDecoder_Profile)
73 IPC_STRUCT_TRAITS_BEGIN(PP_Point)
74 IPC_STRUCT_TRAITS_MEMBER(x)
75 IPC_STRUCT_TRAITS_MEMBER(y)
76 IPC_STRUCT_TRAITS_END()
78 IPC_STRUCT_TRAITS_BEGIN(PP_FloatPoint)
79 IPC_STRUCT_TRAITS_MEMBER(x)
80 IPC_STRUCT_TRAITS_MEMBER(y)
81 IPC_STRUCT_TRAITS_END()
83 IPC_STRUCT_TRAITS_BEGIN(PP_Size)
84 IPC_STRUCT_TRAITS_MEMBER(height)
85 IPC_STRUCT_TRAITS_MEMBER(width)
86 IPC_STRUCT_TRAITS_END()
88 IPC_STRUCT_TRAITS_BEGIN(PP_Rect)
89 IPC_STRUCT_TRAITS_MEMBER(point)
90 IPC_STRUCT_TRAITS_MEMBER(size)
91 IPC_STRUCT_TRAITS_END()
93 IPC_STRUCT_TRAITS_BEGIN(PP_PictureBuffer_Dev)
94 IPC_STRUCT_TRAITS_MEMBER(id)
95 IPC_STRUCT_TRAITS_MEMBER(size)
96 IPC_STRUCT_TRAITS_MEMBER(texture_id)
97 IPC_STRUCT_TRAITS_END()
99 IPC_STRUCT_TRAITS_BEGIN(PP_Picture_Dev)
100 IPC_STRUCT_TRAITS_MEMBER(picture_buffer_id)
101 IPC_STRUCT_TRAITS_MEMBER(bitstream_buffer_id)
102 IPC_STRUCT_TRAITS_END()
104 IPC_STRUCT_TRAITS_BEGIN(PP_PrintPageNumberRange_Dev)
105 IPC_STRUCT_TRAITS_MEMBER(first_page_number)
106 IPC_STRUCT_TRAITS_MEMBER(last_page_number)
107 IPC_STRUCT_TRAITS_END()
109 IPC_STRUCT_TRAITS_BEGIN(PP_VideoCaptureDeviceInfo_Dev)
110 IPC_STRUCT_TRAITS_MEMBER(width)
111 IPC_STRUCT_TRAITS_MEMBER(height)
112 IPC_STRUCT_TRAITS_MEMBER(frames_per_second)
113 IPC_STRUCT_TRAITS_END()
115 IPC_STRUCT_TRAITS_BEGIN(PP_HostResolver_Private_Hint)
116 IPC_STRUCT_TRAITS_MEMBER(family)
117 IPC_STRUCT_TRAITS_MEMBER(flags)
118 IPC_STRUCT_TRAITS_END()
120 IPC_STRUCT_TRAITS_BEGIN(PP_PrintSettings_Dev)
121 IPC_STRUCT_TRAITS_MEMBER(printable_area)
122 IPC_STRUCT_TRAITS_MEMBER(content_area)
123 IPC_STRUCT_TRAITS_MEMBER(paper_size)
124 IPC_STRUCT_TRAITS_MEMBER(dpi)
125 IPC_STRUCT_TRAITS_MEMBER(orientation)
126 IPC_STRUCT_TRAITS_MEMBER(print_scaling_option)
127 IPC_STRUCT_TRAITS_MEMBER(grayscale)
128 IPC_STRUCT_TRAITS_MEMBER(format)
129 IPC_STRUCT_TRAITS_END()
131 IPC_STRUCT_TRAITS_BEGIN(ppapi::DeviceRefData)
132 IPC_STRUCT_TRAITS_MEMBER(type)
133 IPC_STRUCT_TRAITS_MEMBER(name)
134 IPC_STRUCT_TRAITS_MEMBER(id)
135 IPC_STRUCT_TRAITS_END()
137 IPC_STRUCT_TRAITS_BEGIN(ppapi::FlashSiteSetting)
138 IPC_STRUCT_TRAITS_MEMBER(site)
139 IPC_STRUCT_TRAITS_MEMBER(permission)
140 IPC_STRUCT_TRAITS_END()
142 IPC_STRUCT_TRAITS_BEGIN(ppapi::ViewData)
143 IPC_STRUCT_TRAITS_MEMBER(rect)
144 IPC_STRUCT_TRAITS_MEMBER(is_fullscreen)
145 IPC_STRUCT_TRAITS_MEMBER(is_page_visible)
146 IPC_STRUCT_TRAITS_MEMBER(clip_rect)
147 IPC_STRUCT_TRAITS_END()
149 IPC_STRUCT_TRAITS_BEGIN(PP_TouchPoint)
150 IPC_STRUCT_TRAITS_MEMBER(id)
151 IPC_STRUCT_TRAITS_MEMBER(position)
152 IPC_STRUCT_TRAITS_MEMBER(radius)
153 IPC_STRUCT_TRAITS_MEMBER(rotation_angle)
154 IPC_STRUCT_TRAITS_MEMBER(pressure)
155 IPC_STRUCT_TRAITS_END()
157 IPC_STRUCT_TRAITS_BEGIN(ppapi::Preferences)
158 IPC_STRUCT_TRAITS_MEMBER(standard_font_family_map)
159 IPC_STRUCT_TRAITS_MEMBER(fixed_font_family_map)
160 IPC_STRUCT_TRAITS_MEMBER(serif_font_family_map)
161 IPC_STRUCT_TRAITS_MEMBER(sans_serif_font_family_map)
162 IPC_STRUCT_TRAITS_MEMBER(default_font_size)
163 IPC_STRUCT_TRAITS_MEMBER(default_fixed_font_size)
164 IPC_STRUCT_TRAITS_MEMBER(number_of_cpu_cores)
165 IPC_STRUCT_TRAITS_MEMBER(is_3d_supported)
166 IPC_STRUCT_TRAITS_MEMBER(is_stage3d_supported)
167 IPC_STRUCT_TRAITS_END()
169 IPC_STRUCT_TRAITS_BEGIN(ppapi::InputEventData)
170 IPC_STRUCT_TRAITS_MEMBER(is_filtered)
171 IPC_STRUCT_TRAITS_MEMBER(event_type)
172 IPC_STRUCT_TRAITS_MEMBER(event_time_stamp)
173 IPC_STRUCT_TRAITS_MEMBER(event_modifiers)
174 IPC_STRUCT_TRAITS_MEMBER(mouse_button)
175 IPC_STRUCT_TRAITS_MEMBER(mouse_position)
176 IPC_STRUCT_TRAITS_MEMBER(mouse_click_count)
177 IPC_STRUCT_TRAITS_MEMBER(mouse_movement)
178 IPC_STRUCT_TRAITS_MEMBER(wheel_delta)
179 IPC_STRUCT_TRAITS_MEMBER(wheel_ticks)
180 IPC_STRUCT_TRAITS_MEMBER(wheel_scroll_by_page)
181 IPC_STRUCT_TRAITS_MEMBER(key_code)
182 IPC_STRUCT_TRAITS_MEMBER(usb_key_code)
183 IPC_STRUCT_TRAITS_MEMBER(character_text)
184 IPC_STRUCT_TRAITS_MEMBER(composition_segment_offsets)
185 IPC_STRUCT_TRAITS_MEMBER(composition_target_segment)
186 IPC_STRUCT_TRAITS_MEMBER(composition_selection_start)
187 IPC_STRUCT_TRAITS_MEMBER(composition_selection_end)
188 IPC_STRUCT_TRAITS_MEMBER(touches)
189 IPC_STRUCT_TRAITS_MEMBER(changed_touches)
190 IPC_STRUCT_TRAITS_MEMBER(target_touches)
191 IPC_STRUCT_TRAITS_END()
193 IPC_STRUCT_TRAITS_BEGIN(ppapi::HostPortPair)
194 IPC_STRUCT_TRAITS_MEMBER(host)
195 IPC_STRUCT_TRAITS_MEMBER(port)
196 IPC_STRUCT_TRAITS_END()
198 IPC_STRUCT_TRAITS_BEGIN(ppapi::PPB_URLRequestInfo_Data)
199 IPC_STRUCT_TRAITS_MEMBER(url)
200 IPC_STRUCT_TRAITS_MEMBER(method)
201 IPC_STRUCT_TRAITS_MEMBER(headers)
202 IPC_STRUCT_TRAITS_MEMBER(stream_to_file)
203 IPC_STRUCT_TRAITS_MEMBER(follow_redirects)
204 IPC_STRUCT_TRAITS_MEMBER(record_download_progress)
205 IPC_STRUCT_TRAITS_MEMBER(record_upload_progress)
206 IPC_STRUCT_TRAITS_MEMBER(has_custom_referrer_url)
207 IPC_STRUCT_TRAITS_MEMBER(custom_referrer_url)
208 IPC_STRUCT_TRAITS_MEMBER(allow_cross_origin_requests)
209 IPC_STRUCT_TRAITS_MEMBER(allow_credentials)
210 IPC_STRUCT_TRAITS_MEMBER(has_custom_content_transfer_encoding)
211 IPC_STRUCT_TRAITS_MEMBER(custom_content_transfer_encoding)
212 IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_upper_threshold)
213 IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_lower_threshold)
214 IPC_STRUCT_TRAITS_MEMBER(body)
215 IPC_STRUCT_TRAITS_END()
217 IPC_STRUCT_TRAITS_BEGIN(ppapi::PPB_URLRequestInfo_Data::BodyItem)
218 IPC_STRUCT_TRAITS_MEMBER(is_file)
219 IPC_STRUCT_TRAITS_MEMBER(data)
220 // Note: we don't serialize file_ref.
221 IPC_STRUCT_TRAITS_MEMBER(file_ref_host_resource)
222 IPC_STRUCT_TRAITS_MEMBER(start_offset)
223 IPC_STRUCT_TRAITS_MEMBER(number_of_bytes)
224 IPC_STRUCT_TRAITS_MEMBER(expected_last_modified_time)
225 IPC_STRUCT_TRAITS_END()
227 #if !defined(OS_NACL)
228 IPC_STRUCT_TRAITS_BEGIN(ppapi::proxy::PPPVideoCapture_Buffer)
229 IPC_STRUCT_TRAITS_MEMBER(resource)
230 IPC_STRUCT_TRAITS_MEMBER(handle)
231 IPC_STRUCT_TRAITS_MEMBER(size)
232 IPC_STRUCT_TRAITS_END()
234 IPC_STRUCT_TRAITS_BEGIN(ppapi::NetworkInfo)
235 IPC_STRUCT_TRAITS_MEMBER(name)
236 IPC_STRUCT_TRAITS_MEMBER(type)
237 IPC_STRUCT_TRAITS_MEMBER(state)
238 IPC_STRUCT_TRAITS_MEMBER(addresses)
239 IPC_STRUCT_TRAITS_MEMBER(display_name)
240 IPC_STRUCT_TRAITS_MEMBER(mtu)
241 IPC_STRUCT_TRAITS_END()
242 #endif // !defined(OS_NACL)
244 // These are from the browser to the plugin.
245 // Loads the given plugin.
246 IPC_MESSAGE_CONTROL1(PpapiMsg_LoadPlugin, FilePath /* path */)
248 // Creates a channel to talk to a renderer. The plugin will respond with
249 // PpapiHostMsg_ChannelCreated.
250 IPC_MESSAGE_CONTROL2(PpapiMsg_CreateChannel,
251 int /* renderer_id */,
252 bool /* incognito */)
254 // Each plugin may be referenced by multiple renderers. We need the instance
255 // IDs to be unique within a plugin, despite coming from different renderers,
256 // and unique within a renderer, despite going to different plugins. This means
257 // that neither the renderer nor the plugin can generate instance IDs without
258 // consulting the other.
260 // We resolve this by having the renderer generate a unique instance ID inside
261 // its process. It then asks the plugin to reserve that ID by sending this sync
262 // message. If the plugin has not yet seen this ID, it will remember it as used
263 // (to prevent a race condition if another renderer tries to then use the same
264 // instance), and set usable as true.
266 // If the plugin has already seen the instance ID, it will set usable as false
267 // and the renderer must retry a new instance ID.
268 IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_ReserveInstanceId,
269 PP_Instance /* instance */,
270 bool /* usable */)
272 // Passes the WebKit preferences to the plugin.
273 IPC_MESSAGE_CONTROL1(PpapiMsg_SetPreferences,
274 ppapi::Preferences)
276 // Sent in both directions to see if the other side supports the given
277 // interface.
278 IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_SupportsInterface,
279 std::string /* interface_name */,
280 bool /* result */)
282 #if !defined(OS_NACL)
283 // Network state notification from the browser for implementing
284 // PPP_NetworkState_Dev.
285 IPC_MESSAGE_CONTROL1(PpapiMsg_SetNetworkState,
286 bool /* online */)
288 // Instructs the plugin to clear data for the given site & time. The plugin
289 // process will respond with PpapiHostMsg_ClearSiteDataResult. This is used
290 // for Flash.
291 IPC_MESSAGE_CONTROL4(PpapiMsg_ClearSiteData,
292 FilePath /* plugin_data_path */,
293 std::string /* site */,
294 uint64 /* flags */,
295 uint64 /* max_age */)
296 IPC_MESSAGE_CONTROL1(PpapiHostMsg_ClearSiteDataResult,
297 bool /* success */)
299 IPC_MESSAGE_CONTROL2(PpapiMsg_DeauthorizeContentLicenses,
300 uint32 /* request_id */,
301 FilePath /* plugin_data_path */)
302 IPC_MESSAGE_CONTROL2(PpapiHostMsg_DeauthorizeContentLicensesResult,
303 uint32 /* request_id */,
304 bool /* success */)
306 IPC_MESSAGE_CONTROL3(PpapiMsg_GetPermissionSettings,
307 uint32 /* request_id */,
308 FilePath /* plugin_data_path */,
309 PP_Flash_BrowserOperations_SettingType /* setting_type */)
310 IPC_MESSAGE_CONTROL4(
311 PpapiHostMsg_GetPermissionSettingsResult,
312 uint32 /* request_id */,
313 bool /* success */,
314 PP_Flash_BrowserOperations_Permission /* default_permission */,
315 ppapi::FlashSiteSettings /* sites */)
317 IPC_MESSAGE_CONTROL5(PpapiMsg_SetDefaultPermission,
318 uint32 /* request_id */,
319 FilePath /* plugin_data_path */,
320 PP_Flash_BrowserOperations_SettingType /* setting_type */,
321 PP_Flash_BrowserOperations_Permission /* permission */,
322 bool /* clear_site_specific */)
323 IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetDefaultPermissionResult,
324 uint32 /* request_id */,
325 bool /* success */)
327 IPC_MESSAGE_CONTROL4(PpapiMsg_SetSitePermission,
328 uint32 /* request_id */,
329 FilePath /* plugin_data_path */,
330 PP_Flash_BrowserOperations_SettingType /* setting_type */,
331 ppapi::FlashSiteSettings /* sites */)
332 IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetSitePermissionResult,
333 uint32 /* request_id */,
334 bool /* success */)
336 // Broker Process.
337 IPC_SYNC_MESSAGE_CONTROL2_1(PpapiMsg_ConnectToPlugin,
338 PP_Instance /* instance */,
339 IPC::PlatformFileForTransit /* handle */,
340 int32_t /* result */)
341 #endif // !defined(OS_NACL)
343 // PPB_Audio.
345 // Notifies the result of the audio stream create call. This is called in
346 // both error cases and in the normal success case. These cases are
347 // differentiated by the result code, which is one of the standard PPAPI
348 // result codes.
350 // The handler of this message should always close all of the handles passed
351 // in, since some could be valid even in the error case.
352 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBAudio_NotifyAudioStreamCreated,
353 ppapi::HostResource /* audio_id */,
354 int32_t /* result_code (will be != PP_OK on failure) */,
355 IPC::PlatformFileForTransit /* socket_handle */,
356 base::SharedMemoryHandle /* handle */,
357 int32_t /* length */)
359 // PPB_AudioInput_Dev.
360 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBAudioInput_EnumerateDevicesACK,
361 ppapi::HostResource /* audio_input */,
362 int32_t /* result */,
363 std::vector<ppapi::DeviceRefData> /* devices */)
364 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBAudioInput_OpenACK,
365 ppapi::HostResource /* audio_input */,
366 int32_t /* result_code (will be != PP_OK on failure) */,
367 IPC::PlatformFileForTransit /* socket_handle */,
368 base::SharedMemoryHandle /* handle */,
369 int32_t /* length */)
371 // PPB_FileIO.
372 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBFileIO_GeneralComplete,
373 ppapi::HostResource /* file_io */,
374 int32_t /* result */)
375 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBFileIO_OpenFileComplete,
376 ppapi::HostResource /* file_io */,
377 int32_t /* result */)
378 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBFileIO_QueryComplete,
379 ppapi::HostResource /* file_io */,
380 int32_t /* result */,
381 PP_FileInfo /* info */)
382 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBFileIO_ReadComplete,
383 ppapi::HostResource /* file_io */,
384 int32_t /* result */,
385 std::string /* data */)
387 // PPB_FileRef.
388 IPC_MESSAGE_ROUTED3(
389 PpapiMsg_PPBFileRef_CallbackComplete,
390 ppapi::HostResource /* resource */,
391 int /* callback_id */,
392 int32_t /* result */)
394 // PPB_FileSystem.
395 IPC_MESSAGE_ROUTED2(
396 PpapiMsg_PPBFileSystem_OpenComplete,
397 ppapi::HostResource /* filesystem */,
398 int32_t /* result */)
400 // PPB_Graphics2D.
401 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBGraphics2D_FlushACK,
402 ppapi::HostResource /* graphics_2d */,
403 int32_t /* pp_error */)
405 // PPB_Graphics3D.
406 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBGraphics3D_SwapBuffersACK,
407 ppapi::HostResource /* graphics_3d */,
408 int32_t /* pp_error */)
410 // PPB_Instance.
411 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBInstance_MouseLockComplete,
412 PP_Instance /* instance */,
413 int32_t /* result */)
415 // PPP_Class.
416 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasProperty,
417 int64 /* ppp_class */,
418 int64 /* object */,
419 ppapi::proxy::SerializedVar /* property */,
420 ppapi::proxy::SerializedVar /* out_exception */,
421 bool /* result */)
422 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasMethod,
423 int64 /* ppp_class */,
424 int64 /* object */,
425 ppapi::proxy::SerializedVar /* method */,
426 ppapi::proxy::SerializedVar /* out_exception */,
427 bool /* result */)
428 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_GetProperty,
429 int64 /* ppp_class */,
430 int64 /* object */,
431 ppapi::proxy::SerializedVar /* property */,
432 ppapi::proxy::SerializedVar /* out_exception */,
433 ppapi::proxy::SerializedVar /* result */)
434 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiMsg_PPPClass_EnumerateProperties,
435 int64 /* ppp_class */,
436 int64 /* object */,
437 std::vector<ppapi::proxy::SerializedVar> /* props */,
438 ppapi::proxy::SerializedVar /* out_exception */)
439 IPC_SYNC_MESSAGE_ROUTED4_1(PpapiMsg_PPPClass_SetProperty,
440 int64 /* ppp_class */,
441 int64 /* object */,
442 ppapi::proxy::SerializedVar /* name */,
443 ppapi::proxy::SerializedVar /* value */,
444 ppapi::proxy::SerializedVar /* out_exception */)
445 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPClass_RemoveProperty,
446 int64 /* ppp_class */,
447 int64 /* object */,
448 ppapi::proxy::SerializedVar /* property */,
449 ppapi::proxy::SerializedVar /* out_exception */)
450 IPC_SYNC_MESSAGE_ROUTED4_2(PpapiMsg_PPPClass_Call,
451 int64 /* ppp_class */,
452 int64 /* object */,
453 ppapi::proxy::SerializedVar /* method_name */,
454 std::vector<ppapi::proxy::SerializedVar> /* args */,
455 ppapi::proxy::SerializedVar /* out_exception */,
456 ppapi::proxy::SerializedVar /* result */)
457 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_Construct,
458 int64 /* ppp_class */,
459 int64 /* object */,
460 std::vector<ppapi::proxy::SerializedVar> /* args */,
461 ppapi::proxy::SerializedVar /* out_exception */,
462 ppapi::proxy::SerializedVar /* result */)
463 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPClass_Deallocate,
464 int64 /* ppp_class */,
465 int64 /* object */)
467 // PPB_Flash_DeviceID.
468 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBFlashDeviceID_GetReply,
469 int32 /* routing_id */,
470 PP_Resource /* resource */,
471 int32 /* result */,
472 std::string /* value */)
474 // PPP_Graphics3D_Dev.
475 IPC_MESSAGE_ROUTED1(PpapiMsg_PPPGraphics3D_ContextLost,
476 PP_Instance /* instance */)
478 // PPP_InputEvent.
479 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInputEvent_HandleInputEvent,
480 PP_Instance /* instance */,
481 ppapi::InputEventData /* data */)
482 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPInputEvent_HandleFilteredInputEvent,
483 PP_Instance /* instance */,
484 ppapi::InputEventData /* data */,
485 PP_Bool /* result */)
486 // (Message from the plugin to the browser that it handled an input event.)
487 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInputEvent_HandleInputEvent_ACK,
488 PP_Instance /* instance */,
489 PP_TimeTicks /* timestamp */)
491 // PPP_Instance.
492 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPInstance_DidCreate,
493 PP_Instance /* instance */,
494 std::vector<std::string> /* argn */,
495 std::vector<std::string> /* argv */,
496 PP_Bool /* result */)
497 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiMsg_PPPInstance_DidDestroy,
498 PP_Instance /* instance */)
499 IPC_MESSAGE_ROUTED3(PpapiMsg_PPPInstance_DidChangeView,
500 PP_Instance /* instance */,
501 ppapi::ViewData /* new_data */,
502 PP_Bool /* flash_fullscreen */)
503 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInstance_DidChangeFocus,
504 PP_Instance /* instance */,
505 PP_Bool /* has_focus */)
506 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPInstance_HandleDocumentLoad,
507 PP_Instance /* instance */,
508 ppapi::HostResource /* url_loader */,
509 PP_Bool /* result */)
511 // PPP_Messaging.
512 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPMessaging_HandleMessage,
513 PP_Instance /* instance */,
514 ppapi::proxy::SerializedVar /* message */)
516 // PPP_MouseLock.
517 IPC_MESSAGE_ROUTED1(PpapiMsg_PPPMouseLock_MouseLockLost,
518 PP_Instance /* instance */)
520 // PPP_Printing
521 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_QuerySupportedFormats,
522 PP_Instance /* instance */,
523 uint32_t /* result */)
524 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_Begin,
525 PP_Instance /* instance */,
526 std::string /* settings_string */,
527 int32_t /* result */)
528 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_PrintPages,
529 PP_Instance /* instance */,
530 std::vector<PP_PrintPageNumberRange_Dev> /* pages */,
531 ppapi::HostResource /* result */)
532 IPC_MESSAGE_ROUTED1(PpapiMsg_PPPPrinting_End,
533 PP_Instance /* instance */)
534 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_IsScalingDisabled,
535 PP_Instance /* instance */,
536 bool /* result */)
538 // PPP_TextInput.
539 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPTextInput_RequestSurroundingText,
540 PP_Instance /* instance */,
541 uint32_t /* desired_number_of_characters */)
543 // PPB_URLLoader
544 // (Messages from browser to plugin to notify it of changes in state.)
545 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBURLLoader_ReadResponseBody_Ack,
546 ppapi::HostResource /* loader */,
547 int32 /* result */,
548 std::string /* data */)
549 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBURLLoader_CallbackComplete,
550 ppapi::HostResource /* loader */,
551 int32_t /* result */)
552 #if !defined(OS_NACL)
553 // PPB_Broker.
554 IPC_MESSAGE_ROUTED3(
555 PpapiMsg_PPBBroker_ConnectComplete,
556 ppapi::HostResource /* broker */,
557 IPC::PlatformFileForTransit /* handle */,
558 int32_t /* result */)
560 // PPB_FileChooser.
561 IPC_MESSAGE_ROUTED3(
562 PpapiMsg_PPBFileChooser_ChooseComplete,
563 ppapi::HostResource /* chooser */,
564 int32_t /* result_code (will be != PP_OK on failure */,
565 std::vector<ppapi::PPB_FileRef_CreateInfo> /* chosen_files */)
567 // PPB_NetworkMonitor_Private.
568 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBNetworkMonitor_NetworkList,
569 uint32 /* plugin_dispatcher_id */,
570 ppapi::NetworkList /* network_list */)
572 // PPB_Talk
573 IPC_MESSAGE_ROUTED3(
574 PpapiMsg_PPBTalk_GetPermissionACK,
575 uint32 /* plugin_dispatcher_id */,
576 PP_Resource /* resource */,
577 int32_t /* result */)
579 // PPB_TCPSocket_Private.
580 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBTCPSocket_ConnectACK,
581 uint32 /* plugin_dispatcher_id */,
582 uint32 /* socket_id */,
583 bool /* succeeded */,
584 PP_NetAddress_Private /* local_addr */,
585 PP_NetAddress_Private /* remote_addr */)
586 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_SSLHandshakeACK,
587 uint32 /* plugin_dispatcher_id */,
588 uint32 /* socket_id */,
589 bool /* succeeded */,
590 ppapi::PPB_X509Certificate_Fields /* certificate_fields */)
591 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_ReadACK,
592 uint32 /* plugin_dispatcher_id */,
593 uint32 /* socket_id */,
594 bool /* succeeded */,
595 std::string /* data */)
596 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPSocket_WriteACK,
597 uint32 /* plugin_dispatcher_id */,
598 uint32 /* socket_id */,
599 bool /* succeeded */,
600 int32_t /* bytes_written */)
602 // PPB_UDPSocket_Private.
603 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBUDPSocket_BindACK,
604 uint32 /* plugin_dispatcher_id */,
605 uint32 /* socket_id */,
606 bool /* succeeded */,
607 PP_NetAddress_Private /* bound_addr */)
608 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBUDPSocket_RecvFromACK,
609 uint32 /* plugin_dispatcher_id */,
610 uint32 /* socket_id */,
611 bool /* succeeded */,
612 std::string /* data */,
613 PP_NetAddress_Private /* remote_addr */)
614 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBUDPSocket_SendToACK,
615 uint32 /* plugin_dispatcher_id */,
616 uint32 /* socket_id */,
617 bool /* succeeded */,
618 int32_t /* bytes_written */)
620 // PPB_URLLoader_Trusted
621 IPC_MESSAGE_ROUTED1(
622 PpapiMsg_PPBURLLoader_UpdateProgress,
623 ppapi::proxy::PPBURLLoader_UpdateProgress_Params /* params */)
625 // PPB_TCPServerSocket_Private.
627 // |socket_resource| should not be used as Resource in browser. The
628 // only purpose of this argument is to be echoed back.
629 // |status| == PP_ERROR_NOSPACE means that the socket table is full
630 // and new socket can't be initialized.
631 // |status| == PP_ERROR_FAILED means that socket is correctly
632 // initialized (if needed) but Listen call is failed.
633 // |status| == PP_OK means that socket is correctly initialized (if
634 // needed) and Listen call succeeds.
635 IPC_MESSAGE_ROUTED4(PpapiMsg_PPBTCPServerSocket_ListenACK,
636 uint32 /* plugin_dispatcher_id */,
637 PP_Resource /* socket_resource */,
638 uint32 /* socket_id */,
639 int32_t /* status */)
640 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBTCPServerSocket_AcceptACK,
641 uint32 /* plugin_dispatcher_id */,
642 uint32 /* server_socket_id */,
643 uint32 /* accepted_socket_id */,
644 PP_NetAddress_Private /* local_addr */,
645 PP_NetAddress_Private /* remote_addr */)
647 // PPB_HostResolver_Private.
648 IPC_MESSAGE_ROUTED5(PpapiMsg_PPBHostResolver_ResolveACK,
649 uint32 /* plugin_dispatcher_id */,
650 uint32 /* host_resolver_id */,
651 bool /* succeeded */,
652 std::string /* canonical_name */,
653 ppapi::NetAddressList /* net_address_list */)
655 // PPP_Instance_Private.
656 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPInstancePrivate_GetInstanceObject,
657 PP_Instance /* instance */,
658 ppapi::proxy::SerializedVar /* result */)
660 // PPB_VideoCapture_Dev
661 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBVideoCapture_EnumerateDevicesACK,
662 ppapi::HostResource /* video_capture */,
663 int32_t /* result */,
664 std::vector<ppapi::DeviceRefData> /* devices */)
665 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoCapture_OpenACK,
666 ppapi::HostResource /* video_capture */,
667 int32_t /* result */)
669 // PPP_VideoCapture_Dev
670 IPC_MESSAGE_ROUTED3(
671 PpapiMsg_PPPVideoCapture_OnDeviceInfo,
672 ppapi::HostResource /* video_capture */,
673 PP_VideoCaptureDeviceInfo_Dev /* info */,
674 std::vector<ppapi::proxy::PPPVideoCapture_Buffer> /* buffers */)
675 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoCapture_OnStatus,
676 ppapi::HostResource /* video_capture */,
677 uint32_t /* status */)
678 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoCapture_OnError,
679 ppapi::HostResource /* video_capture */,
680 uint32_t /* error_code */)
681 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoCapture_OnBufferReady,
682 ppapi::HostResource /* video_capture */,
683 uint32_t /* buffer */)
685 // PPB_VideoDecoder_Dev.
686 // (Messages from renderer to plugin to notify it to run callbacks.)
687 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBVideoDecoder_EndOfBitstreamACK,
688 ppapi::HostResource /* video_decoder */,
689 int32_t /* bitstream buffer id */,
690 int32_t /* PP_CompletionCallback result */)
691 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_FlushACK,
692 ppapi::HostResource /* video_decoder */,
693 int32_t /* PP_CompletionCallback result */)
694 IPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_ResetACK,
695 ppapi::HostResource /* video_decoder */,
696 int32_t /* PP_CompletionCallback result */)
698 // PPP_VideoDecoder_Dev.
699 IPC_MESSAGE_ROUTED4(PpapiMsg_PPPVideoDecoder_ProvidePictureBuffers,
700 ppapi::HostResource /* video_decoder */,
701 uint32_t /* requested number of buffers */,
702 PP_Size /* dimensions of buffers */,
703 uint32_t /* texture_target */)
704 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_DismissPictureBuffer,
705 ppapi::HostResource /* video_decoder */,
706 int32_t /* picture buffer id */)
707 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_PictureReady,
708 ppapi::HostResource /* video_decoder */,
709 PP_Picture_Dev /* output picture */)
710 IPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_NotifyError,
711 ppapi::HostResource /* video_decoder */,
712 PP_VideoDecodeError_Dev /* error */)
713 #endif // !defined(OS_NACL)
715 // -----------------------------------------------------------------------------
716 // These are from the plugin to the renderer.
718 // Reply to PpapiMsg_CreateChannel. The handle will be NULL if the channel
719 // could not be established. This could be because the IPC could not be created
720 // for some weird reason, but more likely that the plugin failed to load or
721 // initialize properly.
722 IPC_MESSAGE_CONTROL1(PpapiHostMsg_ChannelCreated,
723 IPC::ChannelHandle /* handle */)
725 // Logs the given message to the console of all instances.
726 IPC_MESSAGE_CONTROL4(PpapiHostMsg_LogWithSource,
727 PP_Instance /* instance */,
728 int /* log_level */,
729 std::string /* source */,
730 std::string /* value */)
732 // PPB_Audio.
733 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBAudio_Create,
734 PP_Instance /* instance_id */,
735 int32_t /* sample_rate */,
736 uint32_t /* sample_frame_count */,
737 ppapi::HostResource /* result */)
738 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBAudio_StartOrStop,
739 ppapi::HostResource /* audio_id */,
740 bool /* play */)
742 // PPB_AudioInput.
743 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBAudioInput_Create,
744 PP_Instance /* instance */,
745 ppapi::HostResource /* result */)
746 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBAudioInput_EnumerateDevices,
747 ppapi::HostResource /* audio_input */)
748 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBAudioInput_Open,
749 ppapi::HostResource /* audio_input */,
750 std::string /* device_id */,
751 int32_t /* sample_rate */,
752 uint32_t /* sample_frame_count */)
753 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBAudioInput_StartOrStop,
754 ppapi::HostResource /* audio_input */,
755 bool /* capture */)
756 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBAudioInput_Close,
757 ppapi::HostResource /* audio_input */)
759 // PPB_Core.
760 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_AddRefResource,
761 ppapi::HostResource)
762 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_ReleaseResource,
763 ppapi::HostResource)
765 // PPB_FileIO.
766 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileIO_Create,
767 PP_Instance /* instance */,
768 ppapi::HostResource /* result */)
769 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Open,
770 ppapi::HostResource /* host_resource */,
771 ppapi::HostResource /* file_ref_resource */,
772 int32_t /* open_flags */)
773 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFileIO_Close,
774 ppapi::HostResource /* host_resource */)
775 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFileIO_Query,
776 ppapi::HostResource /* host_resource */)
777 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Touch,
778 ppapi::HostResource /* host_resource */,
779 PP_Time /* last_access_time */,
780 PP_Time /* last_modified_time */)
781 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Read,
782 ppapi::HostResource /* host_resource */,
783 int64_t /* offset */,
784 int32_t /* bytes_to_read */)
785 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_Write,
786 ppapi::HostResource /* host_resource */,
787 int64_t /* offset */,
788 std::string /* data */)
789 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileIO_SetLength,
790 ppapi::HostResource /* host_resource */,
791 int64_t /* length */)
792 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFileIO_Flush,
793 ppapi::HostResource /* host_resource */)
794 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileIO_WillWrite,
795 ppapi::HostResource /* host_resource */,
796 int64_t /* offset */,
797 int32_t /* bytes_to_write */)
798 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileIO_WillSetLength,
799 ppapi::HostResource /* host_resource */,
800 int64_t /* length */)
802 // PPB_FileRef.
803 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFileRef_Create,
804 ppapi::HostResource /* file_system */,
805 std::string /* path */,
806 ppapi::PPB_FileRef_CreateInfo /* result */)
807 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileRef_GetParent,
808 ppapi::HostResource /* file_ref */,
809 ppapi::PPB_FileRef_CreateInfo /* result */)
810 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileRef_MakeDirectory,
811 ppapi::HostResource /* file_ref */,
812 PP_Bool /* make_ancestors */,
813 int /* callback_id */)
814 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBFileRef_Touch,
815 ppapi::HostResource /* file_ref */,
816 PP_Time /* last_access */,
817 PP_Time /* last_modified */,
818 int /* callback_id */)
819 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileRef_Delete,
820 ppapi::HostResource /* file_ref */,
821 int /* callback_id */)
822 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBFileRef_Rename,
823 ppapi::HostResource /* file_ref */,
824 ppapi::HostResource /* new_file_ref */,
825 int /* callback_id */)
826 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFileRef_GetAbsolutePath,
827 ppapi::HostResource /* file_ref */,
828 ppapi::proxy::SerializedVar /* result */)
830 // PPB_FileSystem.
831 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFileSystem_Create,
832 PP_Instance /* instance */,
833 int /* type */,
834 ppapi::HostResource /* result */)
835 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFileSystem_Open,
836 ppapi::HostResource /* result */,
837 int64_t /* expected_size */)
839 // PPB_Graphics2D.
840 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBGraphics2D_Create,
841 PP_Instance /* instance */,
842 PP_Size /* size */,
843 PP_Bool /* is_always_opaque */,
844 ppapi::HostResource /* result */)
845 IPC_MESSAGE_ROUTED5(PpapiHostMsg_PPBGraphics2D_PaintImageData,
846 ppapi::HostResource /* graphics_2d */,
847 ppapi::HostResource /* image_data */,
848 PP_Point /* top_left */,
849 bool /* src_rect_specified */,
850 PP_Rect /* src_rect */)
851 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBGraphics2D_Scroll,
852 ppapi::HostResource /* graphics_2d */,
853 bool /* clip_specified */,
854 PP_Rect /* clip */,
855 PP_Point /* amount */)
856 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBGraphics2D_ReplaceContents,
857 ppapi::HostResource /* graphics_2d */,
858 ppapi::HostResource /* image_data */)
859 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBGraphics2D_Flush,
860 ppapi::HostResource /* graphics_2d */)
862 #if !defined(OS_NACL)
863 // PPB_Graphics3D.
864 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBGraphics3D_Create,
865 PP_Instance /* instance */,
866 ppapi::HostResource /* share_context */,
867 std::vector<int32_t> /* attrib_list */,
868 ppapi::HostResource /* result */)
869 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBGraphics3D_InitCommandBuffer,
870 ppapi::HostResource /* context */)
871 IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_SetGetBuffer,
872 ppapi::HostResource /* context */,
873 int32 /* transfer_buffer_id */)
874 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBGraphics3D_GetState,
875 ppapi::HostResource /* context */,
876 gpu::CommandBuffer::State /* state */,
877 bool /* success */)
878 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBGraphics3D_Flush,
879 ppapi::HostResource /* context */,
880 int32 /* put_offset */,
881 int32 /* last_known_get */,
882 gpu::CommandBuffer::State /* state */,
883 bool /* success */)
884 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBGraphics3D_AsyncFlush,
885 ppapi::HostResource /* context */,
886 int32 /* put_offset */)
887 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBGraphics3D_CreateTransferBuffer,
888 ppapi::HostResource /* context */,
889 int32 /* size */,
890 int32 /* id */)
891 IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_DestroyTransferBuffer,
892 ppapi::HostResource /* context */,
893 int32 /* id */)
894 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBGraphics3D_GetTransferBuffer,
895 ppapi::HostResource /* context */,
896 int32 /* id */,
897 base::SharedMemoryHandle /* transfer_buffer */,
898 uint32 /* size */)
899 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBGraphics3D_SwapBuffers,
900 ppapi::HostResource /* graphics_3d */)
901 #endif // !defined(OS_NACL)
903 // PPB_ImageData.
904 IPC_SYNC_MESSAGE_ROUTED4_3(PpapiHostMsg_PPBImageData_Create,
905 PP_Instance /* instance */,
906 int32 /* format */,
907 PP_Size /* size */,
908 PP_Bool /* init_to_zero */,
909 ppapi::HostResource /* result_resource */,
910 std::string /* image_data_desc */,
911 ppapi::proxy::ImageHandle /* result */)
913 // PPB_Instance.
914 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetWindowObject,
915 PP_Instance /* instance */,
916 ppapi::proxy::SerializedVar /* result */)
917 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetOwnerElementObject,
918 PP_Instance /* instance */,
919 ppapi::proxy::SerializedVar /* result */)
920 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_BindGraphics,
921 PP_Instance /* instance */,
922 ppapi::HostResource /* device */,
923 PP_Bool /* result */)
924 IPC_SYNC_MESSAGE_ROUTED1_1(
925 PpapiHostMsg_PPBInstance_GetAudioHardwareOutputSampleRate,
926 PP_Instance /* instance */,
927 uint32_t /* result */)
928 IPC_SYNC_MESSAGE_ROUTED1_1(
929 PpapiHostMsg_PPBInstance_GetAudioHardwareOutputBufferSize,
930 PP_Instance /* instance */,
931 uint32_t /* result */)
932 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_IsFullFrame,
933 PP_Instance /* instance */,
934 PP_Bool /* result */)
935 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBInstance_ExecuteScript,
936 PP_Instance /* instance */,
937 ppapi::proxy::SerializedVar /* script */,
938 ppapi::proxy::SerializedVar /* out_exception */,
939 ppapi::proxy::SerializedVar /* result */)
940 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetDefaultCharSet,
941 PP_Instance /* instance */,
942 ppapi::proxy::SerializedVar /* result */)
943 IPC_SYNC_MESSAGE_CONTROL0_1(PpapiHostMsg_PPBInstance_GetFontFamilies,
944 std::string /* result */)
945 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_SetFullscreen,
946 PP_Instance /* instance */,
947 PP_Bool /* fullscreen */,
948 PP_Bool /* result */)
949 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBInstance_GetScreenSize,
950 PP_Instance /* instance */,
951 PP_Bool /* result */,
952 PP_Size /* size */)
953 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_RequestInputEvents,
954 PP_Instance /* instance */,
955 bool /* is_filtering */,
956 uint32_t /* event_classes */)
957 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_ClearInputEvents,
958 PP_Instance /* instance */,
959 uint32_t /* event_classes */)
960 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_PostMessage,
961 PP_Instance /* instance */,
962 ppapi::proxy::SerializedVar /* message */)
963 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_LockMouse,
964 PP_Instance /* instance */)
965 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_UnlockMouse,
966 PP_Instance /* instance */)
967 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBPInstance_GetDefaultPrintSettings,
968 PP_Instance /* instance */,
969 PP_PrintSettings_Dev /* settings */,
970 bool /* result */)
971 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_ResolveRelativeToDocument,
972 PP_Instance /* instance */,
973 ppapi::proxy::SerializedVar /* relative */,
974 ppapi::proxy::SerializedVar /* result */)
975 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanRequest,
976 PP_Instance /* instance */,
977 ppapi::proxy::SerializedVar /* relative */,
978 PP_Bool /* result */)
979 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanAccessDocument,
980 PP_Instance /* active */,
981 PP_Instance /* target */,
982 PP_Bool /* result */)
983 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetDocumentURL,
984 PP_Instance /* active */,
985 ppapi::proxy::SerializedVar /* result */)
986 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetPluginInstanceURL,
987 PP_Instance /* active */,
988 ppapi::proxy::SerializedVar /* result */)
989 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_SetCursor,
990 PP_Instance /* instance */,
991 int32_t /* type */,
992 ppapi::HostResource /* custom_image */,
993 PP_Point /* hot_spot */)
994 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SetTextInputType,
995 PP_Instance /* instance */,
996 PP_TextInput_Type /* type */)
997 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_UpdateCaretPosition,
998 PP_Instance /* instance */,
999 PP_Rect /* caret */,
1000 PP_Rect /* bounding_box */)
1001 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_CancelCompositionText,
1002 PP_Instance /* instance */)
1003 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_UpdateSurroundingText,
1004 PP_Instance /* instance */,
1005 std::string /* text */,
1006 uint32_t /* caret */,
1007 uint32_t /* anchor */)
1009 // PPB_URLLoader.
1010 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBURLLoader_Create,
1011 PP_Instance /* instance */,
1012 ppapi::HostResource /* result */)
1013 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBURLLoader_Open,
1014 ppapi::HostResource /* loader */,
1015 ppapi::PPB_URLRequestInfo_Data /* request_data */)
1016 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_FollowRedirect,
1017 ppapi::HostResource /* loader */)
1018 IPC_SYNC_MESSAGE_ROUTED1_1(
1019 PpapiHostMsg_PPBURLLoader_GetResponseInfo,
1020 ppapi::HostResource /* loader */,
1021 ppapi::HostResource /* response_info_out */)
1022 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBURLLoader_ReadResponseBody,
1023 ppapi::HostResource /* loader */,
1024 int32_t /* bytes_to_read */)
1025 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_FinishStreamingToFile,
1026 ppapi::HostResource /* loader */)
1027 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_Close,
1028 ppapi::HostResource /* loader */)
1029 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBURLLoader_GrantUniversalAccess,
1030 ppapi::HostResource /* loader */)
1032 // PPB_URLResponseInfo.
1033 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBURLResponseInfo_GetProperty,
1034 ppapi::HostResource /* response */,
1035 int32_t /* property */,
1036 ppapi::proxy::SerializedVar /* result */)
1037 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBURLResponseInfo_GetBodyAsFileRef,
1038 ppapi::HostResource /* response */,
1039 ppapi::PPB_FileRef_CreateInfo /* result */)
1041 // PPB_Var.
1042 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBVar_AddRefObject,
1043 int64 /* object_id */,
1044 int /* unused - need a return value for sync msgs */)
1045 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVar_ReleaseObject,
1046 int64 /* object_id */)
1047 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBVar_ConvertType,
1048 PP_Instance /* instance */,
1049 ppapi::proxy::SerializedVar /* var */,
1050 int /* new_type */,
1051 ppapi::proxy::SerializedVar /* exception */,
1052 ppapi::proxy::SerializedVar /* result */)
1053 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasProperty,
1054 ppapi::proxy::SerializedVar /* object */,
1055 ppapi::proxy::SerializedVar /* property */,
1056 ppapi::proxy::SerializedVar /* out_exception */,
1057 PP_Bool /* result */)
1058 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasMethodDeprecated,
1059 ppapi::proxy::SerializedVar /* object */,
1060 ppapi::proxy::SerializedVar /* method */,
1061 ppapi::proxy::SerializedVar /* out_exception */,
1062 PP_Bool /* result */)
1063 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_GetProperty,
1064 ppapi::proxy::SerializedVar /* object */,
1065 ppapi::proxy::SerializedVar /* property */,
1066 ppapi::proxy::SerializedVar /* out_exception */,
1067 ppapi::proxy::SerializedVar /* result */)
1068 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_DeleteProperty,
1069 ppapi::proxy::SerializedVar /* object */,
1070 ppapi::proxy::SerializedVar /* property */,
1071 ppapi::proxy::SerializedVar /* out_exception */,
1072 PP_Bool /* result */)
1073 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBVar_EnumerateProperties,
1074 ppapi::proxy::SerializedVar /* object */,
1075 std::vector<ppapi::proxy::SerializedVar> /* props */,
1076 ppapi::proxy::SerializedVar /* out_exception */)
1077 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_SetPropertyDeprecated,
1078 ppapi::proxy::SerializedVar /* object */,
1079 ppapi::proxy::SerializedVar /* name */,
1080 ppapi::proxy::SerializedVar /* value */,
1081 ppapi::proxy::SerializedVar /* out_exception */)
1082 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBVar_CallDeprecated,
1083 ppapi::proxy::SerializedVar /* object */,
1084 ppapi::proxy::SerializedVar /* method_name */,
1085 std::vector<ppapi::proxy::SerializedVar> /* args */,
1086 ppapi::proxy::SerializedVar /* out_exception */,
1087 ppapi::proxy::SerializedVar /* result */)
1088 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_Construct,
1089 ppapi::proxy::SerializedVar /* object */,
1090 std::vector<ppapi::proxy::SerializedVar> /* args */,
1091 ppapi::proxy::SerializedVar /* out_exception */,
1092 ppapi::proxy::SerializedVar /* result */)
1093 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_IsInstanceOfDeprecated,
1094 ppapi::proxy::SerializedVar /* var */,
1095 int64 /* object_class */,
1096 int64 /* object-data */,
1097 PP_Bool /* result */)
1098 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_CreateObjectDeprecated,
1099 PP_Instance /* instance */,
1100 int64 /* object_class */,
1101 int64 /* object_data */,
1102 ppapi::proxy::SerializedVar /* result */)
1104 #if !defined(OS_NACL)
1105 // PPB_Broker.
1106 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBBroker_Create,
1107 PP_Instance /* instance */,
1108 ppapi::HostResource /* result_resource */)
1109 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBBroker_Connect,
1110 ppapi::HostResource /* broker */)
1112 // PPB_Buffer.
1113 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBBuffer_Create,
1114 PP_Instance /* instance */,
1115 uint32_t /* size */,
1116 ppapi::HostResource /* result_resource */,
1117 base::SharedMemoryHandle /* result_shm_handle */)
1119 // PPB_FileChooser.
1120 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBFileChooser_Create,
1121 PP_Instance /* instance */,
1122 int /* mode */,
1123 std::string /* accept_types */,
1124 ppapi::HostResource /* result */)
1125 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBFileChooser_Show,
1126 ppapi::HostResource /* file_chooser */,
1127 PP_Bool /* save_as */,
1128 ppapi::proxy::SerializedVar /* suggested_file_name */,
1129 bool /* require_user_gesture */)
1131 // PPB_NetworkMonitor_Private.
1132 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBNetworkMonitor_Start,
1133 uint32 /* plugin_dispatcher_id */)
1134 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBNetworkMonitor_Stop,
1135 uint32 /* plugin_dispatcher_id */)
1137 // PPB_HostResolver_Private.
1138 IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBHostResolver_Resolve,
1139 int32 /* routing_id */,
1140 uint32 /* plugin_dispatcher_id */,
1141 uint32 /* host_resolver_id */,
1142 ppapi::HostPortPair /* host_port */,
1143 PP_HostResolver_Private_Hint /* hint */)
1145 // PPB_PDF
1146 IPC_SYNC_MESSAGE_ROUTED3_1(
1147 PpapiHostMsg_PPBPDF_GetFontFileWithFallback,
1148 PP_Instance /* instance */,
1149 ppapi::proxy::SerializedFontDescription /* description */,
1150 int32_t /* charset */,
1151 ppapi::HostResource /* result */)
1152 IPC_SYNC_MESSAGE_ROUTED2_1(
1153 PpapiHostMsg_PPBPDF_GetFontTableForPrivateFontFile,
1154 ppapi::HostResource /* font_file */,
1155 uint32_t /* table */,
1156 std::string /* result */)
1159 // PPB_Talk.
1160 IPC_MESSAGE_ROUTED2(
1161 PpapiHostMsg_PPBTalk_GetPermission,
1162 uint32 /* plugin_dispatcher_id */,
1163 PP_Resource /* resource */)
1165 // PPB_Testing.
1166 IPC_SYNC_MESSAGE_ROUTED3_1(
1167 PpapiHostMsg_PPBTesting_ReadImageData,
1168 ppapi::HostResource /* device_context_2d */,
1169 ppapi::HostResource /* image */,
1170 PP_Point /* top_left */,
1171 PP_Bool /* result */)
1172 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBTesting_GetLiveObjectsForInstance,
1173 PP_Instance /* instance */,
1174 uint32 /* result */)
1175 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBTesting_SimulateInputEvent,
1176 PP_Instance /* instance */,
1177 ppapi::InputEventData /* input_event */)
1179 // PPB_VideoCapture_Dev.
1180 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBVideoCapture_Create,
1181 PP_Instance /* instance */,
1182 ppapi::HostResource /* result */)
1183 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_EnumerateDevices,
1184 ppapi::HostResource /* video_capture */)
1185 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBVideoCapture_Open,
1186 ppapi::HostResource /* video_capture */,
1187 std::string /* device_id */,
1188 PP_VideoCaptureDeviceInfo_Dev /* requested_info */,
1189 uint32_t /* buffer_count */)
1190 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_StartCapture,
1191 ppapi::HostResource /* video_capture */)
1192 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoCapture_ReuseBuffer,
1193 ppapi::HostResource /* video_capture */,
1194 uint32_t /* buffer */)
1195 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_StopCapture,
1196 ppapi::HostResource /* video_capture */)
1197 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoCapture_Close,
1198 ppapi::HostResource /* video_capture */)
1199 IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBVideoCapture_StartCapture0_1,
1200 ppapi::HostResource /* video_capture */,
1201 PP_VideoCaptureDeviceInfo_Dev /* requested_info */,
1202 uint32_t /* buffer_count */)
1204 // PPB_VideoDecoder.
1205 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVideoDecoder_Create,
1206 PP_Instance /* instance */,
1207 ppapi::HostResource /* context */,
1208 PP_VideoDecoder_Profile /* profile */,
1209 ppapi::HostResource /* result */)
1210 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBVideoDecoder_Decode,
1211 ppapi::HostResource /* video_decoder */,
1212 ppapi::HostResource /* bitstream buffer */,
1213 int32 /* bitstream buffer id */,
1214 int32 /* size of buffer */)
1215 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_AssignPictureBuffers,
1216 ppapi::HostResource /* video_decoder */,
1217 std::vector<PP_PictureBuffer_Dev> /* picture buffers */)
1218 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_ReusePictureBuffer,
1219 ppapi::HostResource /* video_decoder */,
1220 int32_t /* picture buffer id */)
1221 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Flush,
1222 ppapi::HostResource /* video_decoder */)
1223 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Reset,
1224 ppapi::HostResource /* video_decoder */)
1225 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBVideoDecoder_Destroy,
1226 ppapi::HostResource /* video_decoder */)
1228 // PPB_Flash.
1229 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFlash_SetInstanceAlwaysOnTop,
1230 PP_Instance /* instance */,
1231 PP_Bool /* on_top */)
1232 // This has to be synchronous becuase the caller may want to composite on
1233 // top of the resulting text after the call is complete.
1234 IPC_SYNC_MESSAGE_ROUTED2_1(
1235 PpapiHostMsg_PPBFlash_DrawGlyphs,
1236 PP_Instance /* instance */,
1237 ppapi::proxy::PPBFlash_DrawGlyphs_Params /* params */,
1238 PP_Bool /* result */)
1239 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_GetProxyForURL,
1240 PP_Instance /* instance */,
1241 std::string /* url */,
1242 ppapi::proxy::SerializedVar /* result */)
1243 IPC_SYNC_MESSAGE_ROUTED4_1(PpapiHostMsg_PPBFlash_Navigate,
1244 PP_Instance /* instance */,
1245 ppapi::PPB_URLRequestInfo_Data /* request_data */,
1246 std::string /* target */,
1247 PP_Bool /* from_user_action */,
1248 int32_t /* result */)
1249 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlash_RunMessageLoop,
1250 PP_Instance /* instance */)
1251 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlash_QuitMessageLoop,
1252 PP_Instance /* instance */)
1253 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_GetLocalTimeZoneOffset,
1254 PP_Instance /* instance */,
1255 PP_Time /* t */,
1256 double /* offset */)
1257 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_IsRectTopmost,
1258 PP_Instance /* instance */,
1259 PP_Rect /* rect */,
1260 PP_Bool /* result */)
1261 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlash_FlashSetFullscreen,
1262 PP_Instance /* instance */,
1263 PP_Bool /* fullscreen */,
1264 PP_Bool /* result */)
1265 IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBFlash_FlashGetScreenSize,
1266 PP_Instance /* instance */,
1267 PP_Bool /* result */,
1268 PP_Size /* size */)
1269 IPC_MESSAGE_ROUTED0(PpapiHostMsg_PPBFlash_UpdateActivity)
1270 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlash_GetDeviceID,
1271 PP_Instance /* instance */,
1272 ppapi::proxy::SerializedVar /* id */)
1273 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBFlash_IsClipboardFormatAvailable,
1274 PP_Instance /* instance */,
1275 int /* clipboard_type */,
1276 int /* format */,
1277 bool /* result */)
1278 IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBFlash_ReadClipboardData,
1279 PP_Instance /* instance */,
1280 int /* clipboard_type */,
1281 int /* format */,
1282 ppapi::proxy::SerializedVar /* result */)
1283 IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBFlash_WriteClipboardData,
1284 PP_Instance /* instance */,
1285 int /* clipboard_type */,
1286 std::vector<int> /* formats */,
1287 std::vector<ppapi::proxy::SerializedVar> /* data */)
1288 IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBFlash_OpenFileRef,
1289 PP_Instance /* instance */,
1290 ppapi::HostResource /* file_ref */,
1291 int32_t /* mode */,
1292 IPC::PlatformFileForTransit /* file_handle */,
1293 int32_t /* result */)
1294 IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBFlash_QueryFileRef,
1295 PP_Instance /* instance */,
1296 ppapi::HostResource /* file_ref */,
1297 PP_FileInfo /* info */,
1298 int32_t /* result */)
1299 IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBFlash_InvokePrinting,
1300 PP_Instance /* instance */)
1302 // PPB_Flash_DeviceID.
1303 IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBFlashDeviceID_Get,
1304 int32 /* routing_id */,
1305 PP_Resource /* resource */)
1307 // PPB_Flash_Menu
1308 IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBFlashMenu_Create,
1309 PP_Instance /* instance */,
1310 ppapi::proxy::SerializedFlashMenu /* menu_data */,
1311 ppapi::HostResource /* result */)
1312 IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBFlashMenu_Show,
1313 ppapi::HostResource /* menu */,
1314 PP_Point /* location */)
1315 IPC_MESSAGE_ROUTED3(PpapiMsg_PPBFlashMenu_ShowACK,
1316 ppapi::HostResource /* menu */,
1317 int32_t /* selected_id */,
1318 int32_t /* result */)
1320 // PPB_Flash_MessageLoop.
1321 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Create,
1322 PP_Instance /* instance */,
1323 ppapi::HostResource /* result */)
1324 IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Run,
1325 ppapi::HostResource /* flash_message_loop */,
1326 int32_t /* result */)
1327 IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlashMessageLoop_Quit,
1328 ppapi::HostResource /* flash_message_loop */)
1330 // PPB_TCPSocket_Private.
1331 IPC_SYNC_MESSAGE_CONTROL2_1(PpapiHostMsg_PPBTCPSocket_Create,
1332 int32 /* routing_id */,
1333 uint32 /* plugin_dispatcher_id */,
1334 uint32 /* socket_id */)
1335 IPC_MESSAGE_CONTROL4(PpapiHostMsg_PPBTCPSocket_Connect,
1336 int32 /* routing_id */,
1337 uint32 /* socket_id */,
1338 std::string /* host */,
1339 uint16_t /* port */)
1340 IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBTCPSocket_ConnectWithNetAddress,
1341 int32 /* routing_id */,
1342 uint32 /* socket_id */,
1343 PP_NetAddress_Private /* net_addr */)
1344 IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBTCPSocket_SSLHandshake,
1345 uint32 /* socket_id */,
1346 std::string /* server_name */,
1347 uint16_t /* server_port */,
1348 std::vector<std::vector<char> > /* trusted_certs */,
1349 std::vector<std::vector<char> > /* untrusted_certs */)
1350 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPSocket_Read,
1351 uint32 /* socket_id */,
1352 int32_t /* bytes_to_read */)
1353 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPSocket_Write,
1354 uint32 /* socket_id */,
1355 std::string /* data */)
1356 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBTCPSocket_Disconnect,
1357 uint32 /* socket_id */)
1359 // PPB_UDPSocket_Private.
1360 IPC_SYNC_MESSAGE_CONTROL2_1(PpapiHostMsg_PPBUDPSocket_Create,
1361 int32 /* routing_id */,
1362 uint32 /* plugin_dispatcher_id */,
1363 uint32 /* socket_id */)
1364 IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBUDPSocket_Bind,
1365 int32 /* routing_id */,
1366 uint32 /* socket_id */,
1367 PP_NetAddress_Private /* net_addr */)
1368 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBUDPSocket_RecvFrom,
1369 uint32 /* socket_id */,
1370 int32_t /* num_bytes */)
1371 IPC_MESSAGE_CONTROL3(PpapiHostMsg_PPBUDPSocket_SendTo,
1372 uint32 /* socket_id */,
1373 std::string /* data */,
1374 PP_NetAddress_Private /* net_addr */)
1375 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBUDPSocket_Close,
1376 uint32 /* socket_id */)
1378 // PPB_TCPServerSocket_Private.
1379 IPC_MESSAGE_CONTROL5(PpapiHostMsg_PPBTCPServerSocket_Listen,
1380 int32 /* routing_id */,
1381 uint32 /* plugin_dispatcher_id */,
1382 PP_Resource /* socket_resource */,
1383 PP_NetAddress_Private /* addr */,
1384 int32_t /* backlog */)
1385 IPC_MESSAGE_CONTROL2(PpapiHostMsg_PPBTCPServerSocket_Accept,
1386 int32 /* tcp_client_socket_routing_id */,
1387 uint32 /* server_socket_id */)
1388 IPC_MESSAGE_CONTROL1(PpapiHostMsg_PPBTCPServerSocket_Destroy,
1389 uint32 /* socket_id */)
1391 // PPB_X509Certificate_Private
1392 IPC_SYNC_MESSAGE_CONTROL1_2(PpapiHostMsg_PPBX509Certificate_ParseDER,
1393 std::vector<char> /* der */,
1394 bool /* succeeded */,
1395 ppapi::PPB_X509Certificate_Fields /* result */)
1397 // PPB_Font.
1398 IPC_SYNC_MESSAGE_CONTROL0_1(PpapiHostMsg_PPBFont_GetFontFamilies,
1399 std::string /* result */)
1401 #endif // !defined(OS_NACL)
1403 //-----------------------------------------------------------------------------
1404 // Resource call/reply messages.
1406 // These are the new-style resource implementations where the resource is only
1407 // implemented in the proxy and "resource messages" are sent between this and a
1408 // host object. Resource messages are a wrapper around some general routing
1409 // information and a separate message of a type defined by the specific resource
1410 // sending/receiving it. The extra paremeters allow the nested message to be
1411 // routed automatically to the correct resource.
1413 // Notification that a resource has been created in the plugin. The nested
1414 // message will be resource-type-specific.
1415 IPC_MESSAGE_CONTROL3(PpapiHostMsg_ResourceCreated,
1416 ppapi::proxy::ResourceMessageCallParams /* call_params */,
1417 PP_Instance /* instance */,
1418 IPC::Message /* nested_msg */)
1420 // Notification that a resource has been destroyed in the plugin.
1421 IPC_MESSAGE_CONTROL1(PpapiHostMsg_ResourceDestroyed,
1422 PP_Resource /* resource */)
1424 // A resource call is a request from the plugin to the host. It may or may not
1425 // require a reply, depending on the params. The nested message will be
1426 // resource-type-specific.
1427 IPC_MESSAGE_CONTROL2(PpapiHostMsg_ResourceCall,
1428 ppapi::proxy::ResourceMessageCallParams /* call_params */,
1429 IPC::Message /* nested_msg */)
1431 // A resource reply is a response to a ResourceCall from a host to the
1432 // plugin. The resource ID + sequence number in the params will correspond to
1433 // that of the previous ResourceCall.
1434 IPC_MESSAGE_CONTROL2(
1435 PpapiPluginMsg_ResourceReply,
1436 ppapi::proxy::ResourceMessageReplyParams /* reply_params */,
1437 IPC::Message /* nested_msg */)