15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Multiply-included message header, no traditional include guard.
65d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include <map>
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <string>
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <vector>
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/basictypes.h"
112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/files/file_path.h"
129ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch#include "base/memory/shared_memory.h"
1358e6fbe4ee35d65e14b626c557d37565bf8ad179Ben Murdoch#include "base/process/process.h"
147d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "base/strings/string16.h"
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/sync_socket.h"
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "gpu/command_buffer/common/command_buffer.h"
1746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "gpu/command_buffer/common/mailbox.h"
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "gpu/ipc/gpu_command_buffer_traits.h"
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ipc/ipc_channel_handle.h"
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ipc/ipc_message_macros.h"
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ipc/ipc_message_utils.h"
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ipc/ipc_platform_file.h"
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/dev/pp_video_capture_dev.h"
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/dev/pp_video_dev.h"
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/c/dev/ppb_truetype_font_dev.h"
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/dev/ppb_url_util_dev.h"
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/dev/ppp_printing_dev.h"
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_bool.h"
2946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "ppapi/c/pp_codecs.h"
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_file_info.h"
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_instance.h"
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_module.h"
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_point.h"
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_rect.h"
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_resource.h"
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_size.h"
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_time.h"
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/ppb_audio_config.h"
39f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "ppapi/c/ppb_compositor_layer.h"
40a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)#include "ppapi/c/ppb_image_data.h"
41eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "ppapi/c/ppb_tcp_socket.h"
42bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#include "ppapi/c/ppb_text_input_controller.h"
43eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "ppapi/c/ppb_udp_socket.h"
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/private/pp_content_decryptor.h"
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/private/pp_private_font_charset.h"
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/private/ppb_flash.h"
475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/private/ppb_host_resolver_private.h"
48f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "ppapi/c/private/ppb_isolated_file_system_private.h"
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/private/ppb_net_address_private.h"
50c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "ppapi/c/private/ppb_pdf.h"
51868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "ppapi/c/private/ppb_talk_private.h"
529ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdoch#include "ppapi/c/private/ppp_flash_browser_operations.h"
532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/proxy/host_resolver_private_resource.h"
54d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)#include "ppapi/proxy/network_list_resource.h"
555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/proxy/ppapi_param_traits.h"
565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/proxy/ppapi_proxy_export.h"
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/proxy/resource_message_params.h"
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/proxy/serialized_flash_menu.h"
592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/proxy/serialized_handle.h"
605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/proxy/serialized_structs.h"
615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/proxy/serialized_var.h"
62f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "ppapi/shared_impl/compositor_layer_data.h"
632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/shared_impl/dir_contents.h"
645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ppapi/shared_impl/file_growth.h"
652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/shared_impl/file_path.h"
66eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "ppapi/shared_impl/file_ref_create_info.h"
6746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)#include "ppapi/shared_impl/media_stream_audio_track_shared.h"
68a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)#include "ppapi/shared_impl/media_stream_video_track_shared.h"
695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ppapi/shared_impl/ppapi_nacl_plugin_args.h"
705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/ppapi_preferences.h"
715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/ppb_device_ref_shared.h"
725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/ppb_input_event_shared.h"
7368043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#include "ppapi/shared_impl/ppb_tcp_socket_shared.h"
745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/ppb_view_shared.h"
755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/ppp_flash_browser_operations_shared.h"
765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/private/ppb_x509_certificate_private_shared.h"
77eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "ppapi/shared_impl/socket_option_data.h"
785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/url_request_info_data.h"
792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/shared_impl/url_response_info_data.h"
80cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include "ui/events/ipc/latency_info_param_traits.h"
815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#undef IPC_MESSAGE_EXPORT
835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define IPC_MESSAGE_EXPORT PPAPI_PROXY_EXPORT
845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define IPC_MESSAGE_START PpapiMsgStart
865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(ppapi::TCPSocketVersion,
8868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                          ppapi::TCP_SOCKET_VERSION_1_1_OR_ABOVE)
895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_AudioSampleRate)
90f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_BlendMode, PP_BLENDMODE_LAST)
915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_DeviceType_Dev)
925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_DecryptorStreamType)
93f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_ENUM_TRAITS(PP_SessionType)
94f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_ENUM_TRAITS(PP_CdmExceptionCode)
95f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_FileSystemType, PP_FILESYSTEMTYPE_ISOLATED)
96f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_FileType, PP_FILETYPE_OTHER)
975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_Permission)
985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_Flash_BrowserOperations_SettingType)
995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_FlashSetting)
100a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)IPC_ENUM_TRAITS(PP_ImageDataFormat)
1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_InputEvent_MouseButton)
1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_InputEvent_Type)
103f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_IsolatedFileSystemType_Private,
104f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                          PP_ISOLATEDFILESYSTEMTYPE_PRIVATE_PLUGINPRIVATE)
105eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_ENUM_TRAITS_MAX_VALUE(PP_NetAddressFamily_Private,
106eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                          PP_NETADDRESSFAMILY_PRIVATE_IPV6)
10768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_NetworkList_State, PP_NETWORKLIST_STATE_UP)
10868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_NetworkList_Type, PP_NETWORKLIST_TYPE_CELLULAR)
1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_PrintOrientation_Dev)
1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_PrintOutputFormat_Dev)
1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_PrintScalingOption_Dev)
1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_PrivateFontCharset)
113c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_ENUM_TRAITS(PP_ResourceImage)
114c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_ENUM_TRAITS(PP_ResourceString)
115868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_TalkEvent, PP_TALKEVENT_NUM_EVENTS - 1)
116868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_TalkPermission,
117868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)                          PP_TALKPERMISSION_NUM_PERMISSIONS - 1)
118eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_ENUM_TRAITS_MAX_VALUE(PP_TCPSocket_Option,
119eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                          PP_TCPSOCKET_OPTION_RECV_BUFFER_SIZE)
1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_TextInput_Type)
1212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_ENUM_TRAITS(PP_TrueTypeFontFamily_Dev)
1222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_ENUM_TRAITS(PP_TrueTypeFontStyle_Dev)
1232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_ENUM_TRAITS(PP_TrueTypeFontWeight_Dev)
1242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_ENUM_TRAITS(PP_TrueTypeFontWidth_Dev)
1252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_ENUM_TRAITS(PP_TrueTypeFontCharset_Dev)
126eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_ENUM_TRAITS_MAX_VALUE(PP_UDPSocket_Option,
127eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                          PP_UDPSOCKET_OPTION_RECV_BUFFER_SIZE)
1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_VideoDecodeError_Dev)
1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_ENUM_TRAITS(PP_VideoDecoder_Profile)
130a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_VideoFrame_Format, PP_VIDEOFRAME_FORMAT_LAST)
13146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_ENUM_TRAITS_MAX_VALUE(PP_VideoProfile, PP_VIDEOPROFILE_MAX)
1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_Point)
1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(x)
1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(y)
1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_FloatPoint)
1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(x)
1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(y)
1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_Size)
1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(height)
1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(width)
1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
148f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_FloatSize)
149f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(height)
150f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(width)
151f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
152f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_Rect)
1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(point)
1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(size)
1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
158f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_FloatRect)
159f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(point)
160f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(size)
161f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
162f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
163a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_ImageDataDesc)
164a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(format)
165a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(size)
166a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(stride)
167a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)IPC_STRUCT_TRAITS_END()
168a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)
1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_PictureBuffer_Dev)
1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(id)
1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(size)
1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(texture_id)
1735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_Picture_Dev)
1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(picture_buffer_id)
1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(bitstream_buffer_id)
1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_PrintPageNumberRange_Dev)
1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(first_page_number)
1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(last_page_number)
1835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_VideoCaptureDeviceInfo_Dev)
1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(width)
1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(height)
1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(frames_per_second)
1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_HostResolver_Private_Hint)
1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(family)
1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(flags)
1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_PrintSettings_Dev)
1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(printable_area)
1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(content_area)
1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(paper_size)
2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(dpi)
2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(orientation)
2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(print_scaling_option)
2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(grayscale)
2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(format)
2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_URLComponent_Dev)
2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(begin)
2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(len)
2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_URLComponents_Dev)
2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(scheme)
2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(username)
2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(password)
2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(host)
2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(port)
2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(path)
2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(query)
2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(ref)
2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
223f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_FileInfo)
224f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(size)
225f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(type)
226f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(system_type)
227f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(creation_time)
228f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(last_access_time)
229f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(last_modified_time)
230f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_STRUCT_TRAITS_END()
231f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
2325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::FileGrowth)
2335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(max_written_offset)
2345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(append_mode_write_amount)
2355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
2365d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
237f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::CompositorLayerData)
238f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(common)
239f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(color)
240f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(texture)
241f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(image)
242f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
243f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
244f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::CompositorLayerData::LayerCommon)
245f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(size)
246f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(clip_rect)
247f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(transform)
248f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(blend_mode)
249f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(opacity)
250f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(resource_id)
251f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
252f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
253f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::CompositorLayerData::ColorLayer)
254f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(red)
255f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(green)
256f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(blue)
257f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(alpha)
258f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
259f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
260f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::CompositorLayerData::ImageLayer)
261f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(resource)
262f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(source_rect)
263f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
264f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
265f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::CompositorLayerData::TextureLayer)
266f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(mailbox)
267f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(sync_point)
268f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(source_rect)
269f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(premult_alpha)
270f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
271f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
2725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::DeviceRefData)
2735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(type)
2745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(name)
2755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(id)
2765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
2775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::DirEntry)
2792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(name)
2802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_dir)
2812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_STRUCT_TRAITS_END()
2822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
283d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::FileRefCreateInfo)
2847d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(file_system_type)
2857d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(internal_path)
2867d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(display_name)
287d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(browser_pending_host_resource_id)
288d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(renderer_pending_host_resource_id)
2897d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(file_system_plugin_resource)
2907d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
2917d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
2925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::FlashSiteSetting)
2935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(site)
2945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(permission)
2955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
2965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
29746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::MediaStreamAudioTrackShared::Attributes)
29846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(buffers)
29946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_STRUCT_TRAITS_END()
30046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
301a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::MediaStreamVideoTrackShared::Attributes)
302a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(buffers)
303a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(width)
304a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(height)
305a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(format)
306a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
307a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
3085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::ViewData)
3095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(rect)
3105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_fullscreen)
3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_page_visible)
3125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(clip_rect)
3135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(device_scale)
3145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(css_scale)
3156d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(scroll_offset)
3165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
3175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(PP_TouchPoint)
3195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(id)
3205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(position)
3215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(radius)
3225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(rotation_angle)
3235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(pressure)
3245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
3255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::Preferences)
3275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(standard_font_family_map)
3285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(fixed_font_family_map)
3295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(serif_font_family_map)
3305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(sans_serif_font_family_map)
3315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(default_font_size)
3325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(default_fixed_font_size)
3335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(number_of_cpu_cores)
3345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_3d_supported)
3355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_stage3d_supported)
3362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_stage3d_baseline_supported)
337a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_accelerated_video_decode_enabled)
3385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
3395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::InputEventData)
3415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_filtered)
3425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(event_type)
3435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(event_time_stamp)
3445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(event_modifiers)
3455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(mouse_button)
3465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(mouse_position)
3475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(mouse_click_count)
3485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(mouse_movement)
3495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(wheel_delta)
3505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(wheel_ticks)
3515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(wheel_scroll_by_page)
3525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(key_code)
353d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(code)
3545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(character_text)
3555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(composition_segment_offsets)
3565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(composition_target_segment)
3575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(composition_selection_start)
3585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(composition_selection_end)
3595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(touches)
3605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(changed_touches)
3615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(target_touches)
362cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(latency_info)
3635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
3645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::HostPortPair)
3665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(host)
3675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(port)
3685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::URLRequestInfoData)
3715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(url)
3725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(method)
3735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(headers)
3745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(stream_to_file)
3755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(follow_redirects)
3765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(record_download_progress)
3775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(record_upload_progress)
3785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(has_custom_referrer_url)
3795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(custom_referrer_url)
3805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(allow_cross_origin_requests)
3815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(allow_credentials)
3825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(has_custom_content_transfer_encoding)
3835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(custom_content_transfer_encoding)
3845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_upper_threshold)
3855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(prefetch_buffer_lower_threshold)
3865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(has_custom_user_agent)
3875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(custom_user_agent)
3885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(body)
3895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
3905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::URLRequestInfoData::BodyItem)
3925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(is_file)
3935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(data)
394d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(file_ref_pp_resource)
3955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(start_offset)
3965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(number_of_bytes)
3975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(expected_last_modified_time)
3985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
3995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::URLResponseInfoData)
4012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(url)
4022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(headers)
4032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(status_code)
4042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(status_text)
4052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(redirect_url)
4062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(body_as_file_ref)
4072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_STRUCT_TRAITS_END()
4082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
409d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::proxy::SerializedNetworkInfo)
4105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(name)
4115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(type)
4125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(state)
4135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(addresses)
4145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(display_name)
4155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(mtu)
4165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
4175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Only whitelisted switches passed through PpapiNaClPluginArgs.
419c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// The list of switches can be found in:
4205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)//   components/nacl/browser/nacl_process_host.cc
4215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::PpapiNaClPluginArgs)
422c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(off_the_record)
423c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(permissions)
424effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch  IPC_STRUCT_TRAITS_MEMBER(keepalive_throttle_interval_milliseconds)
425c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(switch_names)
426c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(switch_values)
427c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_STRUCT_TRAITS_END()
428c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
4295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_NACL) && !defined(NACL_WIN64)
4305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_BEGIN(ppapi::proxy::PPPDecryptor_Buffer)
4325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(resource)
4335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(handle)
4345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  IPC_STRUCT_TRAITS_MEMBER(size)
4355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_STRUCT_TRAITS_END()
4365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_NACL) && !defined(NACL_WIN64)
4385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// These are from the browser to the plugin.
4405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Loads the given plugin.
4415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiMsg_LoadPlugin,
4422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::FilePath /* path */,
4435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     ppapi::PpapiPermissions /* permissions */)
4445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Creates a channel to talk to a renderer. The plugin will respond with
4465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PpapiHostMsg_ChannelCreated.
4472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiMsg_CreateChannel,
4482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::ProcessId /* renderer_pid */,
4492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int /* renderer_child_id */,
4505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* incognito */)
4515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Initializes the IPC dispatchers in the NaCl plugin.
4535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiMsg_InitializeNaClDispatcher,
4545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     ppapi::PpapiNaClPluginArgs /* args */)
4555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Instructs the plugin process to crash.
4572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiMsg_Crash)
4582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
4592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Instructs the plugin process to hang.
4602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiMsg_Hang)
4612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
4625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Each plugin may be referenced by multiple renderers. We need the instance
4635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// IDs to be unique within a plugin, despite coming from different renderers,
4645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// and unique within a renderer, despite going to different plugins. This means
4655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// that neither the renderer nor the plugin can generate instance IDs without
4665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// consulting the other.
4675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
4685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// We resolve this by having the renderer generate a unique instance ID inside
4695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// its process. It then asks the plugin to reserve that ID by sending this sync
4705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// message. If the plugin has not yet seen this ID, it will remember it as used
4715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// (to prevent a race condition if another renderer tries to then use the same
4725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// instance), and set usable as true.
4735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
4745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// If the plugin has already seen the instance ID, it will set usable as false
4755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// and the renderer must retry a new instance ID.
4765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_ReserveInstanceId,
4775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            PP_Instance /* instance */,
4785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            bool /* usable */)
4795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Passes the WebKit preferences to the plugin.
4815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiMsg_SetPreferences,
4825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     ppapi::Preferences)
4835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Sent in both directions to see if the other side supports the given
4855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// interface.
4865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_CONTROL1_1(PpapiMsg_SupportsInterface,
4875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            std::string /* interface_name */,
4885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            bool /* result */)
4895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_LogInterfaceUsage,
4915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int /* interface_hash */)
4925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
4935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_NACL) && !defined(NACL_WIN64)
4945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Network state notification from the browser for implementing
4955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_NetworkState_Dev.
4965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiMsg_SetNetworkState,
4975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* online */)
4985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Requests a list of sites that have data stored from the plugin. The plugin
5005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// process will respond with PpapiHostMsg_GetSitesWithDataResult. This is used
5015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// for Flash.
5025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiMsg_GetSitesWithData,
5035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::FilePath /* plugin_data_path */)
5055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_GetSitesWithDataResult,
5065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::vector<std::string> /* sites */)
5085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Instructs the plugin to clear data for the given site & time. The plugin
5105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// process will respond with PpapiHostMsg_ClearSiteDataResult. This is used
5115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// for Flash.
5125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL5(PpapiMsg_ClearSiteData,
5135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::FilePath /* plugin_data_path */,
5155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* site */,
5165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint64 /* flags */,
5175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint64 /* max_age */)
5185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_ClearSiteDataResult,
5195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* success */)
5215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiMsg_DeauthorizeContentLicenses,
5235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::FilePath /* plugin_data_path */)
5255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_DeauthorizeContentLicensesResult,
5265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* success */)
5285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiMsg_GetPermissionSettings,
5305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::FilePath /* plugin_data_path */,
5325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_Flash_BrowserOperations_SettingType /* setting_type */)
5335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL4(
5345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiHostMsg_GetPermissionSettingsResult,
5355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    uint32 /* request_id */,
5365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    bool /* success */,
5375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PP_Flash_BrowserOperations_Permission /* default_permission */,
5385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::FlashSiteSettings /* sites */)
5395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL5(PpapiMsg_SetDefaultPermission,
5415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::FilePath /* plugin_data_path */,
5435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_Flash_BrowserOperations_SettingType /* setting_type */,
5445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_Flash_BrowserOperations_Permission /* permission */,
5455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* clear_site_specific */)
5465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetDefaultPermissionResult,
5475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* success */)
5495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiMsg_SetSitePermission,
5515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::FilePath /* plugin_data_path */,
5535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_Flash_BrowserOperations_SettingType /* setting_type */,
5545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     ppapi::FlashSiteSettings /* sites */)
5555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_SetSitePermissionResult,
5565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32 /* request_id */,
5575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* success */)
5585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Broker Process.
5605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_CONTROL2_1(PpapiMsg_ConnectToPlugin,
5615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            PP_Instance /* instance */,
5625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            IPC::PlatformFileForTransit /* handle */,
5635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            int32_t /* result */)
5645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_NACL) && !defined(NACL_WIN64)
5655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Audio.
5675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Notifies the result of the audio stream create call. This is called in
5695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// both error cases and in the normal success case. These cases are
5705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// differentiated by the result code, which is one of the standard PPAPI
5715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// result codes.
5725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
5735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// The handler of this message should always close all of the handles passed
5745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// in, since some could be valid even in the error case.
5755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiMsg_PPBAudio_NotifyAudioStreamCreated,
5765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* audio_id */,
5775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int32_t /* result_code (will be != PP_OK on failure) */,
5785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::proxy::SerializedHandle /* socket_handle */,
5795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::proxy::SerializedHandle /* handle */)
5805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Graphics3D.
5825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPBGraphics3D_SwapBuffersACK,
5835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* graphics_3d */,
5845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int32_t /* pp_error */)
5855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_ImageData.
5875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiMsg_PPBImageData_NotifyUnusedImageData,
5885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* old_image_data */)
5895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Instance.
5915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPBInstance_MouseLockComplete,
5925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
5935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int32_t /* result */)
5945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_Class.
5965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasProperty,
5975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
5985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
5995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* property */,
6005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
6015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           bool /* result */)
6025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_HasMethod,
6035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
6045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
6055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* method */,
6065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
6075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           bool /* result */)
6085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_GetProperty,
6095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
6105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
6115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* property */,
6125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
6135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
6145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiMsg_PPPClass_EnumerateProperties,
6155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
6165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
6175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<ppapi::proxy::SerializedVar> /* props */,
6185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */)
6195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED4_1(PpapiMsg_PPPClass_SetProperty,
6205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
6215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
6225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* name */,
6235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* value */,
6245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */)
6255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPClass_RemoveProperty,
6265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
6275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
6285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* property */,
6295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */)
6305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED4_2(PpapiMsg_PPPClass_Call,
6315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
6325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
6335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* method_name */,
6345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<ppapi::proxy::SerializedVar> /* args */,
6355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
6365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
6375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_2(PpapiMsg_PPPClass_Construct,
6385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* ppp_class */,
6395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object */,
6405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<ppapi::proxy::SerializedVar> /* args */,
6415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
6425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
6435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPPClass_Deallocate,
6445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int64 /* ppp_class */,
6455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int64 /* object */)
6465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_Graphics3D_Dev.
6485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiMsg_PPPGraphics3D_ContextLost,
6495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */)
6505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_InputEvent.
6525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInputEvent_HandleInputEvent,
6535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
6545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::InputEventData /* data */)
6555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPInputEvent_HandleFilteredInputEvent,
6565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
6575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::InputEventData /* data */,
6585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
6595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_Instance.
6615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(PpapiMsg_PPPInstance_DidCreate,
6625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
6635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<std::string> /* argn */,
6645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<std::string> /* argv */,
6655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
6665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_0(PpapiMsg_PPPInstance_DidDestroy,
6675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */)
6685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiMsg_PPPInstance_DidChangeView,
6695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
6705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::ViewData /* new_data */,
6715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Bool /* flash_fullscreen */)
6725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPPInstance_DidChangeFocus,
6735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
6745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Bool /* has_focus */)
67590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiMsg_PPPInstance_HandleDocumentLoad,
67690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    PP_Instance /* instance */,
67790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    int /* pending_loader_host_id */,
67890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    ppapi::URLResponseInfoData /* response */)
6795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
680f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// PPP_Messaging and PPP_MessageHandler.
6815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPPMessaging_HandleMessage,
6825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
6835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* message */)
684f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiMsg_PPPMessageHandler_HandleBlockingMessage,
685f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                           PP_Instance /* instance */,
686f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* message */,
687f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */,
688f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                           bool /* was_handled */);
6895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_MouseLock.
6915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiMsg_PPPMouseLock_MouseLockLost,
6925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */)
6935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// PPP_Pdf
6955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPPPdf_Rotate,
6965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                    PP_Instance /* instance */,
6975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                    bool /* clockwise */)
6985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
69923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)// Find
70023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiPluginMsg_PPPFind_StartFind,
70123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Instance /* instance */,
70223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    std::string /* text */)
70323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiPluginMsg_PPPFind_SelectFindResult,
70423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Instance /* instance */,
70523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Bool /* forward */)
70623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiPluginMsg_PPPFind_StopFind,
70723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Instance /* instance */)
70823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)
70923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_SetPluginToHandleFindRequests,
71023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Instance /* instance */)
71123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_NumberOfFindResultsChanged,
71223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Instance /* instance */,
71323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    int32_t /* total */,
71423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Bool /* final_result */)
71523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SelectFindResultChanged,
71623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    PP_Instance /* instance */,
71723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                    int32_t /* index */)
718effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SetTickmarks,
719effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    PP_Instance /* instance */,
720effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    std::vector<PP_Rect> /* tickmarks */)
72123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)
7225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_Printing
7235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_QuerySupportedFormats,
7245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
7255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           uint32_t /* result */)
7265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_Begin,
7275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
7285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::string /* settings_string */,
7295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int32_t /* result */)
7305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_1(PpapiMsg_PPPPrinting_PrintPages,
7315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
7325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<PP_PrintPageNumberRange_Dev> /* pages */,
7335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* result */)
7345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiMsg_PPPPrinting_End,
7355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */)
7365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPPrinting_IsScalingDisabled,
7375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
7385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           bool /* result */)
7395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
7405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_TextInput.
7415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPPTextInput_RequestSurroundingText,
7425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                   PP_Instance /* instance */,
7435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                   uint32_t /* desired_number_of_characters */)
7445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
7455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_NACL) && !defined(NACL_WIN64)
7465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Broker.
7475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(
7485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiMsg_PPBBroker_ConnectComplete,
7495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::HostResource /* broker */,
7505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IPC::PlatformFileForTransit /* handle */,
7515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    int32_t /* result */)
7525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
7535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_ContentDecryptor_Dev
754f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiMsg_PPPContentDecryptor_Initialize,
7555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
756f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                    ppapi::proxy::SerializedVar /* key_system, String */)
757f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_ROUTED5(PpapiMsg_PPPContentDecryptor_CreateSession,
75868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                    PP_Instance /* instance */,
759f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    uint32_t /* promise_id */,
760f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* init_data_type, String */,
761f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* init_data, ArrayBuffer */,
762f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    PP_SessionType /* session_type */)
7635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_LoadSession,
7645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                    PP_Instance /* instance */,
765f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    uint32_t /* promise_id */,
7665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */)
767f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiMsg_PPPContentDecryptor_UpdateSession,
7685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
769f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    uint32_t /* promise_id */,
770f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */,
771a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* response, ArrayBuffer */)
772f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_ReleaseSession,
7735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
774f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    uint32_t /* promise_id */,
775f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */)
7765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_Decrypt,
7775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
7785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::proxy::PPPDecryptor_Buffer /* buffer */,
7795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    std::string /* serialized_block_info */)
7805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(
7815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiMsg_PPPContentDecryptor_InitializeAudioDecoder,
7825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PP_Instance /* instance */,
7835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    std::string /* serialized_decoder_config */,
7845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::proxy::PPPDecryptor_Buffer /* extra_data_buffer */)
7855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(
7865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiMsg_PPPContentDecryptor_InitializeVideoDecoder,
7875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PP_Instance /* instance */,
7885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    std::string /* serialized_decoder_config */,
7895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::proxy::PPPDecryptor_Buffer /* extra_data_buffer. */)
7905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_DeinitializeDecoder,
7915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
7925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_DecryptorStreamType /* decoder_type */,
7935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* request_id */)
7945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiMsg_PPPContentDecryptor_ResetDecoder,
7955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
7965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_DecryptorStreamType /* decoder_type */,
7975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* request_id */)
7985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiMsg_PPPContentDecryptor_DecryptAndDecode,
7995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
8005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_DecryptorStreamType /* decoder_type */,
8015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::proxy::PPPDecryptor_Buffer /* buffer */,
8025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    std::string /* serialized_block_info */)
8035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPP_Instance_Private.
8055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiMsg_PPPInstancePrivate_GetInstanceObject,
8065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
8075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
8085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_NACL) && !defined(NACL_WIN64)
8105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Reports to the browser that a plugin has been active.
8125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Keepalive)
8135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
8145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// -----------------------------------------------------------------------------
8155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// These are from the plugin to the renderer.
8165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Reply to PpapiMsg_CreateChannel. The handle will be NULL if the channel
8185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// could not be established. This could be because the IPC could not be created
8195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// for some weird reason, but more likely that the plugin failed to load or
8205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// initialize properly.
8215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_ChannelCreated,
8225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     IPC::ChannelHandle /* handle */)
8235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8240529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch// Notify the renderer that the PPAPI channel gets ready in the plugin.
8250529e5d033099cbfc42635f6f6183833b09dff6eBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_StartupInitializationComplete);
8260529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch
827010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)// Calls renderer to open a resource file for nacl_irt_open_resource().
828010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)IPC_SYNC_MESSAGE_CONTROL1_1(PpapiHostMsg_OpenResource,
829010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                            std::string /* key */,
830010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                            ppapi::proxy::SerializedHandle /* fd */)
831010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
8325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Logs the given message to the console of all instances.
8335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiHostMsg_LogWithSource,
8345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_Instance /* instance */,
8355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     int /* log_level */,
8365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* source */,
8375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* value */)
8385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Audio.
8405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBAudio_Create,
8415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance_id */,
8425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int32_t /* sample_rate */,
8435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           uint32_t /* sample_frame_count */,
8445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* result */)
8455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBAudio_StartOrStop,
8465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* audio_id */,
8475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    bool /* play */)
8485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Core.
8505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_AddRefResource,
8515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource)
8525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBCore_ReleaseResource,
8535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource)
8545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Graphics3D.
8565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBGraphics3D_Create,
8575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
8585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* share_context */,
8595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<int32_t> /* attrib_list */,
8605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* result */)
8615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_SetGetBuffer,
8625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* context */,
8635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int32 /* transfer_buffer_id */)
86423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBGraphics3D_WaitForTokenInRange,
86523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                           ppapi::HostResource /* context */,
86623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                           int32 /* start */,
86723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                           int32 /* end */,
86823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                           gpu::CommandBuffer::State /* state */,
86923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                           bool /* success */)
87023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBGraphics3D_WaitForGetOffsetInRange,
8715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* context */,
87223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                           int32 /* start */,
87323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)                           int32 /* end */,
8745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           gpu::CommandBuffer::State /* state */,
8755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           bool /* success */)
8765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBGraphics3D_AsyncFlush,
8775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* context */,
8785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int32 /* put_offset */)
879e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen MurdochIPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBGraphics3D_CreateTransferBuffer,
8805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* context */,
8812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                           uint32 /* size */,
882e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch                           int32 /* id */,
883e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch                           ppapi::proxy::SerializedHandle /* transfer_buffer */)
8845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBGraphics3D_DestroyTransferBuffer,
8855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* context */,
8865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int32 /* id */)
8875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBGraphics3D_SwapBuffers,
8885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* graphics_3d */)
8892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBGraphics3D_InsertSyncPoint,
8902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                           ppapi::HostResource /* context */,
8912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                           uint32 /* sync_point */)
8925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
8935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_ImageData.
8947d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED4_3(PpapiHostMsg_PPBImageData_CreatePlatform,
8955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
8965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int32 /* format */,
8975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Size /* size */,
8985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* init_to_zero */,
8995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* result_resource */,
9007d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                           PP_ImageDataDesc /* image_data_desc */,
9015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::ImageHandle /* result */)
9027d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED4_3(PpapiHostMsg_PPBImageData_CreateSimple,
9035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int32 /* format */,
9055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Size /* size */,
9065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* init_to_zero */,
9075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* result_resource */,
9087d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                           PP_ImageDataDesc /* image_data_desc */,
9095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedHandle /* result */)
9105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
9115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Instance.
9125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetWindowObject,
9135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
9155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetOwnerElementObject,
9165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
9182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_BindGraphics,
9192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                    PP_Instance /* instance */,
9202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                    PP_Resource /* device */)
9215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(
9225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiHostMsg_PPBInstance_GetAudioHardwareOutputSampleRate,
9235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           uint32_t /* result */)
9255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(
9265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiHostMsg_PPBInstance_GetAudioHardwareOutputBufferSize,
9275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           uint32_t /* result */)
9295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_IsFullFrame,
9305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
9325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBInstance_ExecuteScript,
9335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* script */,
9355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
9365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
9375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetDefaultCharSet,
9385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
9405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_SetFullscreen,
9415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* fullscreen */,
9435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
9445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBInstance_GetScreenSize,
9455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */,
9475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Size /* size */)
9485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_RequestInputEvents,
9495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
9505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    bool /* is_filtering */,
9515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* event_classes */)
9525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_ClearInputEvents,
9535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
9545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* event_classes */)
955cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_StartTrackingLatency,
956cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                    PP_Instance /* instance */)
9575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_PostMessage,
9585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
9595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* message */)
9605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_LockMouse,
9615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */)
9625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_UnlockMouse,
9635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */)
9645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_ResolveRelativeToDocument,
9655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* relative */,
9675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
9685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanRequest,
9695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
9705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* relative */,
9715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
9725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_1(PpapiHostMsg_PPBInstance_DocumentCanAccessDocument,
9735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* active */,
9745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* target */,
9755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
9765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBInstance_GetDocumentURL,
9775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* active */,
9785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_URLComponents_Dev /* components */,
9795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
9805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetPluginInstanceURL,
9815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* active */,
9825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
98358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBInstance_GetPluginReferrerURL,
98458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)                           PP_Instance /* instance */,
98558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
9865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_SetCursor,
9875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
9885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int32_t /* type */,
9895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* custom_image */,
9905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Point /* hot_spot */)
9915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SetTextInputType,
9925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
9935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_TextInput_Type /* type */)
9945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_UpdateCaretPosition,
9955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
9965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Rect /* caret */,
9975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Rect /* bounding_box */)
9985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBInstance_CancelCompositionText,
9995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */)
10005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_UpdateSurroundingText,
10015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
10025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    std::string /* text */,
10035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* caret */,
10045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* anchor */)
10055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
10065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Var.
10075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBVar_AddRefObject,
10085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object_id */,
10095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int /* unused - need a return value for sync msgs */)
10105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVar_ReleaseObject,
10115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int64 /* object_id */)
10125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasProperty,
10135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* property */,
10155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
10165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
10175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_HasMethodDeprecated,
10185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* method */,
10205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
10215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
10225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_GetProperty,
10235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* property */,
10255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
10265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
10275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_DeleteProperty,
10285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* property */,
10305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
10315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
10325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_2(PpapiHostMsg_PPBVar_EnumerateProperties,
10335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<ppapi::proxy::SerializedVar> /* props */,
10355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */)
10365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_SetPropertyDeprecated,
10375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* name */,
10395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* value */,
10405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */)
10415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_2(PpapiHostMsg_PPBVar_CallDeprecated,
10425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* method_name */,
10445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<ppapi::proxy::SerializedVar> /* args */,
10455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
10465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
10475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_Construct,
10485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* object */,
10495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           std::vector<ppapi::proxy::SerializedVar> /* args */,
10505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* out_exception */,
10515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
10525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(PpapiHostMsg_PPBVar_IsInstanceOfDeprecated,
10535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* var */,
10545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object_class */,
10555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object-data */,
10565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Bool /* result */)
10575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVar_CreateObjectDeprecated,
10585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
10595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object_class */,
10605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           int64 /* object_data */,
10615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::proxy::SerializedVar /* result */)
10625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
10635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_NACL) && !defined(NACL_WIN64)
10645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Broker.
10655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBBroker_Create,
10665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
10675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* result_resource */)
10685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBBroker_Connect,
10695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* broker */)
10705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
10715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Buffer.
10725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_2(
10735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiHostMsg_PPBBuffer_Create,
10745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PP_Instance /* instance */,
10755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    uint32_t /* size */,
10765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::HostResource /* result_resource */,
10775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::proxy::SerializedHandle /* result_shm_handle */)
10785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
10795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_ContentDecryptor_Dev messages handled in PPB_Instance_Proxy.
1080f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_PromiseResolved,
1081f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    PP_Instance /* instance */,
1082f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    uint32_t /* promise_id */)
1083f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_PromiseResolvedWithSession,
10845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
1085f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    uint32_t /* promise_id */,
1086a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */)
1087f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_ROUTED5(PpapiHostMsg_PPBInstance_PromiseRejected,
1088f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    PP_Instance /* instance */,
1089f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    uint32_t /* promise_id */,
1090f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    PP_CdmExceptionCode /* exception_code */,
1091f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    int32_t /* system_code */,
1092f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* error_description, String */)
1093a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_SessionMessage,
10945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
1095f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */,
10962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                    ppapi::proxy::SerializedVar /* message, ArrayBuffer */,
1097a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* destination_url, String */)
1098a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SessionReady,
1099a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    PP_Instance /* instance */,
1100f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */)
1101a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBInstance_SessionClosed,
11025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
1103f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */)
1104f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_ROUTED5(PpapiHostMsg_PPBInstance_SessionError,
1105a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    PP_Instance /* instance */,
1106f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* web_session_id, String */,
1107f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    PP_CdmExceptionCode /* exception_code */,
1108f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    int32_t /* system_code */,
1109f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                    ppapi::proxy::SerializedVar /* error_description, String */)
11105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DeliverBlock,
11115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
11125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Resource /* decrypted_block, PPB_Buffer_Dev */,
11135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    std::string /* serialized_block_info */)
11145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBInstance_DecoderInitializeDone,
11155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
11165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_DecryptorStreamType /* decoder_type */,
11175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* request_id */,
11185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Bool /* success */)
11195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DecoderDeinitializeDone,
11205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
11215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_DecryptorStreamType /* decoder_type */,
11225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* request_id */)
11235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DecoderResetDone,
11245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
11255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_DecryptorStreamType /* decoder_type */,
11265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    uint32_t /* request_id */)
11275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DeliverFrame,
11285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
11295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Resource /* decrypted_frame, PPB_Buffer_Dev */,
11305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    std::string /* serialized_block_info */)
11315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED3(PpapiHostMsg_PPBInstance_DeliverSamples,
11325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Instance /* instance */,
11335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    PP_Resource /* audio_frames, PPB_Buffer_Dev */,
11345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    std::string /* serialized_block_info */)
11355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_NACL) && !defined(NACL_WIN64)
11365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
11375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_Testing.
11385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(
11395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiHostMsg_PPBTesting_ReadImageData,
11405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::HostResource /* device_context_2d */,
11415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::HostResource /* image */,
11425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PP_Point /* top_left */,
11435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PP_Bool /* result */)
11445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBTesting_GetLiveObjectsForInstance,
11455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
11465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           uint32 /* result */)
11477d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED2_0(PpapiHostMsg_PPBTesting_SimulateInputEvent,
11487d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                           PP_Instance /* instance */,
11497d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                           ppapi::InputEventData /* input_event */)
1150c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_0(
1151c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    PpapiHostMsg_PPBTesting_SetMinimumArrayBufferSizeForShmem,
1152c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    uint32_t /* threshold */)
11535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
11545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_NACL) && !defined(NACL_WIN64)
11555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1156effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// PPB_VideoDecoder_Dev.
1157effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// (Messages from plugin to renderer.)
11585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED3_1(PpapiHostMsg_PPBVideoDecoder_Create,
11595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_Instance /* instance */,
11605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* context */,
11615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           PP_VideoDecoder_Profile /* profile */,
11625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* result */)
11635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED4(PpapiHostMsg_PPBVideoDecoder_Decode,
11645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* video_decoder */,
11655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* bitstream buffer */,
11665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int32 /* bitstream buffer id */,
11672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                    uint32 /* size of buffer */)
11685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_AssignPictureBuffers,
11695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* video_decoder */,
11705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    std::vector<PP_PictureBuffer_Dev> /* picture buffers */)
11715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED2(PpapiHostMsg_PPBVideoDecoder_ReusePictureBuffer,
11725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* video_decoder */,
11735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    int32_t /* picture buffer id */)
11745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Flush,
11755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* video_decoder */)
11765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_ROUTED1(PpapiHostMsg_PPBVideoDecoder_Reset,
11775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                    ppapi::HostResource /* video_decoder */)
11785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBVideoDecoder_Destroy,
11795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                           ppapi::HostResource /* video_decoder */)
11805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1181effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// PPB_VideoDecoder_Dev.
1182effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// (Messages from renderer to plugin to notify it to run callbacks.)
1183effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED3(PpapiMsg_PPBVideoDecoder_EndOfBitstreamACK,
1184effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    ppapi::HostResource /* video_decoder */,
1185effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    int32_t /* bitstream buffer id */,
1186effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    int32_t /* PP_CompletionCallback result */)
1187effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_FlushACK,
1188effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    ppapi::HostResource /* video_decoder */,
1189effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    int32_t /* PP_CompletionCallback result  */)
1190effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED2(PpapiMsg_PPBVideoDecoder_ResetACK,
1191effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    ppapi::HostResource /* video_decoder */,
1192effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    int32_t /* PP_CompletionCallback result */)
1193effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
1194effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// PPP_VideoDecoder_Dev.
1195effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED4(PpapiMsg_PPPVideoDecoder_ProvidePictureBuffers,
1196effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    ppapi::HostResource /* video_decoder */,
1197effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    uint32_t /* requested number of buffers */,
1198effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    PP_Size /* dimensions of buffers */,
1199effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    uint32_t /* texture_target */)
1200effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_DismissPictureBuffer,
1201effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    ppapi::HostResource /* video_decoder */,
1202effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    int32_t /* picture buffer id */)
1203effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_PictureReady,
1204effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    ppapi::HostResource /* video_decoder */,
1205effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    PP_Picture_Dev /* output picture */)
1206effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_ROUTED2(PpapiMsg_PPPVideoDecoder_NotifyError,
1207effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    ppapi::HostResource /* video_decoder */,
1208effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                    PP_VideoDecodeError_Dev /* error */)
12095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_NACL) && !defined(NACL_WIN64)
12105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
12115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PPB_X509Certificate_Private
12125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_CONTROL1_2(PpapiHostMsg_PPBX509Certificate_ParseDER,
12135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            std::vector<char> /* der */,
12145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            bool /* succeeded */,
12155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                            ppapi::PPB_X509Certificate_Fields /* result */)
12165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
12175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//-----------------------------------------------------------------------------
12185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Resource call/reply messages.
12195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
12205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// These are the new-style resource implementations where the resource is only
12215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// implemented in the proxy and "resource messages" are sent between this and a
12225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// host object. Resource messages are a wrapper around some general routing
12235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// information and a separate message of a type defined by the specific resource
12245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// sending/receiving it. The extra paremeters allow the nested message to be
12255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// routed automatically to the correct resource.
12265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
12275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Notification that a resource has been created in the plugin. The nested
12285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// message will be resource-type-specific.
12295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_ResourceCreated,
12305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     ppapi::proxy::ResourceMessageCallParams /* call_params */,
12315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_Instance  /* instance */,
12325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     IPC::Message /* nested_msg */)
12335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
12345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Notification that a resource has been destroyed in the plugin.
12355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_ResourceDestroyed,
12365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_Resource /* resource */)
12375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
12382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Most resources are created by the plugin, which then sends a ResourceCreated
12392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// message to create a corresponding ResourceHost in the renderer or browser
12402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// host process. However, some resources are first created in the host and
12412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// "pushed" or returned to the plugin.
12422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)//
12432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// In this case, the host will create a "pending" ResourceHost object which
12442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// is identified by an ID. The ID is sent to the plugin process and the
12452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// PluginResource object is created. This message is sent from the plugin to
12462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// the host process to connect the PluginResource and the pending ResourceHost
12472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// (at which point, it's no longer pending).
12482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_AttachToPendingHost,
12492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Resource /* resource */,
12502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int /* pending_host_id */)
12512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
12525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// A resource call is a request from the plugin to the host. It may or may not
12535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// require a reply, depending on the params. The nested message will be
12545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// resource-type-specific.
12555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_ResourceCall,
12565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     ppapi::proxy::ResourceMessageCallParams /* call_params */,
12575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     IPC::Message /* nested_msg */)
1258a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_InProcessResourceCall,
1259a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)                     int /* routing_id */,
1260a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)                     ppapi::proxy::ResourceMessageCallParams /* call_params */,
1261a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)                     IPC::Message /* nested_msg */)
12625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
12635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// A resource reply is a response to a ResourceCall from a host to the
12645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// plugin. The resource ID + sequence number in the params will correspond to
12655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// that of the previous ResourceCall.
12665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(
12675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    PpapiPluginMsg_ResourceReply,
12685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::proxy::ResourceMessageReplyParams /* reply_params */,
12695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IPC::Message /* nested_msg */)
1270a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)IPC_MESSAGE_ROUTED2(
1271a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)    PpapiHostMsg_InProcessResourceReply,
1272a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)    ppapi::proxy::ResourceMessageReplyParams /* reply_params */,
1273a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)    IPC::Message /* nested_msg */)
1274a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
12755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_SYNC_MESSAGE_CONTROL2_2(PpapiHostMsg_ResourceSyncCall,
12765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::proxy::ResourceMessageCallParams /* call_params */,
12775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IPC::Message /* nested_msg */,
12785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    ppapi::proxy::ResourceMessageReplyParams /* reply_params */,
12795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    IPC::Message /* reply_msg */)
12805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1281868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// This message is sent from the renderer to the browser when it wants to create
12823551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// ResourceHosts in the browser. It contains the process ID of the plugin and
1283868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// the instance of the plugin for which to create the resource for. params
1284868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// contains the sequence number for the message to track the response.
12853551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// The nested messages are ResourceHost creation messages.
12867dbb3d5cf0c15f500944d211057644d6a2f37371Ben MurdochIPC_MESSAGE_CONTROL5(
12873551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    PpapiHostMsg_CreateResourceHostsFromHost,
12887dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch    int /* routing_id */,
1289868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    int /* child_process_id */,
1290868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    ppapi::proxy::ResourceMessageCallParams /* params */,
1291868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    PP_Instance /* instance */,
12923551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    std::vector<IPC::Message> /* nested_msgs */)
1293868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)
12943551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// This message is sent from the browser to the renderer when it has created
12953551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// ResourceHosts for the renderer. It contains the sequence number that was sent
12963551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// in the request and the IDs of the pending ResourceHosts which were created in
12973551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// the browser. These IDs are only useful for the plugin which can attach to the
12983551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// ResourceHosts in the browser.
12997dbb3d5cf0c15f500944d211057644d6a2f37371Ben MurdochIPC_MESSAGE_ROUTED2(
13003551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    PpapiHostMsg_CreateResourceHostsFromHostReply,
1301868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    int32_t /* sequence */,
13023551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)    std::vector<int> /* pending_host_ids */)
1303868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)
13045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//-----------------------------------------------------------------------------
13055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Messages for resources using call/reply above.
13065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Broker ----------------------------------------------------------------------
13082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Broker_Create)
13092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
13102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Queries whether the plugin has permission to connect to the Pepper broker.
13112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// The response is contained in the error value of the
13122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// ResourceMessageReplyParams in the reply message.
13132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Broker_IsAllowed)
13142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
13155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// UMA
13165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_UMA_Create)
13175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL5(PpapiHostMsg_UMA_HistogramCustomTimes,
13185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* name */,
13195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int64_t /* sample */,
13205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int64_t /* min */,
13215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int64_t /* max */,
13225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     uint32_t /* bucket_count */)
13235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL5(PpapiHostMsg_UMA_HistogramCustomCounts,
13245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* name */,
13255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* sample */,
13265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* min */,
13275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* max */,
13285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     uint32_t /* bucket_count */)
13295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_UMA_HistogramEnumeration,
13305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* name */,
13315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* sample */,
13325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* boundary_value */)
1333effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_UMA_IsCrashReportingEnabled);
1334effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL0(PpapiPluginMsg_UMA_IsCrashReportingEnabledReply);
13355d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
1336f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Compositor
1337f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Compositor_Create)
1338f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_Compositor_CommitLayers,
1339f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     std::vector<ppapi::CompositorLayerData> /* layers */,
1340f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     bool /* reset */)
1341f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Compositor_CommitLayersReply)
1342f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiPluginMsg_Compositor_ReleaseResource,
1343f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     int32_t /* id */,
1344f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     uint32_t /* sync_point */,
1345f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     bool /* is_lost */)
1346f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)
13475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// File chooser.
13485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileChooser_Create)
13495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiHostMsg_FileChooser_Show,
13505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* save_as */,
13515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* open_multiple */,
13525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* suggested_file_name */,
13535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::vector<std::string> /* accept_mime_types */)
13545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileChooser_ShowReply,
1355d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     std::vector<ppapi::FileRefCreateInfo> /* files */)
13565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
13572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// FileIO
13582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_Create)
13592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileIO_Open,
13602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Resource /* file_ref_resource */,
13612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int32_t /* open_flags */)
13625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_FileIO_OpenReply,
13635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     PP_Resource /* quota_file_system */,
13645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int64_t /* file_size */)
13655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileIO_Close,
13665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     ppapi::FileGrowth /* file_growth */)
13672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileIO_Touch,
13682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Time /* last_access_time */,
13692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Time /* last_modified_time */)
13702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileIO_SetLength,
13712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int64_t /* length */)
13722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_Flush)
1373c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileIO_RequestOSFileHandle)
1374c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileIO_RequestOSFileHandleReply)
13752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileIO_GeneralReply)
13762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
13777d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// FileRef
1378ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// Creates a FileRef to a path on an external file system. This message may
1379ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// only be sent from the renderer.
1380a02191e04bc25c4935f804f2c080ae28663d096dBen MurdochIPC_MESSAGE_CONTROL1(PpapiHostMsg_FileRef_CreateForRawFS,
1381ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch                     base::FilePath /* external_path */)
1382ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
1383a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// Creates a FileRef to a path on a file system that uses fileapi.
1384a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// This message may be sent from the renderer or the plugin.
1385a02191e04bc25c4935f804f2c080ae28663d096dBen MurdochIPC_MESSAGE_CONTROL2(PpapiHostMsg_FileRef_CreateForFileAPI,
13867d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     PP_Resource /* file_system */,
13877d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     std::string /* internal_path */)
13887d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
13897d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Requests that the browser create a directory at the location indicated by
13907d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// the FileRef.
13917d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileRef_MakeDirectory,
13925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* make_directory_flags */)
13937d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileRef_MakeDirectoryReply)
13947d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
13957d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Requests that the browser update the last accessed and last modified times
13967d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// at the location indicated by the FileRef.
13977d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileRef_Touch,
13987d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     PP_Time /* last_accessed */,
13997d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     PP_Time /* last_modified */)
14007d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileRef_TouchReply)
14017d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
14027d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Requests that the browser delete a file or directory at the location
14037d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// indicated by the FileRef.
14047d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileRef_Delete)
14057d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileRef_DeleteReply)
14067d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
14077d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Requests that the browser rename a file or directory at the location
14087d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// indicated by the FileRef.
14097d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileRef_Rename,
14107d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     PP_Resource /* new_file_ref */)
14117d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileRef_RenameReply)
14127d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
14137d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Requests that the browser retrieve metadata information for a file or
14147d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// directory at the location indicated by the FileRef.
14157d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileRef_Query)
14167d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileRef_QueryReply,
14177d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     PP_FileInfo /* file_info */)
14187d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
14197d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Requests that the browser retrieve then entries in a directory at the
14207d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// location indicated by the FileRef.
14217d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileRef_ReadDirectoryEntries)
14227d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
1423d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// FileRefCreateInfo does not provide file type information, so two
14247d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// corresponding vectors are returned.
14257d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_FileRef_ReadDirectoryEntriesReply,
1426d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     std::vector<ppapi::FileRefCreateInfo> /* files */,
14277d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     std::vector<PP_FileType> /* file_types */)
14287d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
14297d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// Requests that the browser reply with the absolute path to the indicated
14307d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// file.
14317d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FileRef_GetAbsolutePath)
14327d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileRef_GetAbsolutePathReply,
14337d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     std::string /* absolute_path */)
14347d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
1435c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// FileSystem
1436c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileSystem_Create,
1437c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     PP_FileSystemType /* type */)
1438c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FileSystem_Open,
1439c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     int64_t /* expected_size */)
1440c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileSystem_OpenReply)
1441f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileSystem_InitIsolatedFileSystem,
1442f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                     std::string /* fsid */,
1443f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                     PP_IsolatedFileSystemType_Private /* type */)
1444424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_FileSystem_InitIsolatedFileSystemReply)
14450f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)// Passed from renderer to browser. Creates an already-open file system with a
14460f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)// given |root_url| and |file_system_type|.
14470f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileSystem_CreateFromRenderer,
14480f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)                     std::string /* root_url */,
14490f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)                     PP_FileSystemType /* file_system_type */)
14500f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)// Nested within a ResourceVar for file systems being passed from the renderer
14510f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)// to the plugin. Creates an already-open file system resource on the plugin,
14520f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)// linked to the existing resource host given in the ResourceVar.
14530f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FileSystem_CreateFromPendingHost,
14540f1bc08d4cfcc34181b0b5cbf065c40f687bf740Torne (Richard Coles)                     PP_FileSystemType /* file_system_type */)
14555d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FileSystem_ReserveQuota,
14565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int64_t /* amount */,
14575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     ppapi::FileGrowthMap /* file_growths */)
14585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_FileSystem_ReserveQuotaReply,
14595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int64_t /* amount */,
14605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     ppapi::FileSizeMap /* file_sizes */)
1461c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
14625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Gamepad.
14635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Gamepad_Create)
14645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Requests that the gamepad host send the shared memory handle to the plugin
14665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// process.
14675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Gamepad_RequestMemory)
14685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Reply to a RequestMemory call. This supplies the shared memory handle. The
14705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// actual handle is passed in the ReplyParams struct.
14715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Gamepad_SendMemory)
14725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
14742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Graphics2D, plugin -> host
14752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_Graphics2D_Create,
14762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Size /* size */,
14772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Bool /* is_always_opaque */)
14782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiHostMsg_Graphics2D_PaintImageData,
14792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::HostResource /* image_data */,
14802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Point /* top_left */,
14812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     bool /* src_rect_specified */,
14822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Rect /* src_rect */)
14832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_Graphics2D_Scroll,
14842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     bool /* clip_specified */,
14852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Rect /* clip */,
14862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Point /* amount */)
14872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Graphics2D_ReplaceContents,
14882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::HostResource /* image_data */)
1489e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen MurdochIPC_MESSAGE_CONTROL1(PpapiHostMsg_Graphics2D_SetScale,
14902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     float /* scale */)
14912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
14922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Graphics2D, plugin -> host -> plugin
1493cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Graphics2D_Flush,
1494cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                     std::vector<ui::LatencyInfo> /* latency_info */)
14952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Graphics2D_FlushAck)
14962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
14972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_Graphics2D_ReadImageData,
14982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Resource /* image */,
14992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Point /* top_left */)
15002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Graphics2D_ReadImageDataAck)
15012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1502f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// IsolatedFileSystem
1503f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_IsolatedFileSystem_Create)
1504f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_IsolatedFileSystem_BrowserOpen,
1505f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                     PP_IsolatedFileSystemType_Private /* type */)
1506f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_IsolatedFileSystem_BrowserOpenReply,
1507f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)                     std::string /* fsid */)
1508f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
15095d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// MediaStream -----------------------------------------------------------------
15105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_MediaStreamAudioTrack_CreateFromPendingHost,
15115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* track_id */)
151246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL1(
151346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    PpapiHostMsg_MediaStreamAudioTrack_Configure,
151446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    ppapi::MediaStreamAudioTrackShared::Attributes /* attributes */)
151546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_MediaStreamAudioTrack_ConfigureReply)
15165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_MediaStreamVideoTrack_CreateFromPendingHost,
15175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* track_id */)
1518010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_MediaStreamVideoTrack_Create)
1519a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)IPC_MESSAGE_CONTROL1(
1520a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    PpapiHostMsg_MediaStreamVideoTrack_Configure,
1521a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    ppapi::MediaStreamVideoTrackShared::Attributes /* attributes */)
1522010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_MediaStreamVideoTrack_ConfigureReply,
1523010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                     std::string /* track_id */)
15245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
15255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Message for init buffers. It also takes a shared memory handle which is put
15265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// in the outer ResourceReplyMessage.
1527010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiPluginMsg_MediaStreamTrack_InitBuffers,
15285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* number_of_buffers */,
1529010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                     int32_t /* buffer_size */,
1530010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                     bool /* readonly */)
15315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_MediaStreamTrack_EnqueueBuffer,
15325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* index */);
15335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_MediaStreamTrack_EnqueueBuffer,
15345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     int32_t /* index */);
1535010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_MediaStreamTrack_EnqueueBuffers,
1536010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)                     std::vector<int32_t> /* indices */);
15375d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_MediaStreamTrack_Close)
15385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
1539d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// NetworkMonitor.
1540d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_NetworkMonitor_Create)
1541d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_NetworkMonitor_NetworkList,
1542d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     ppapi::proxy::SerializedNetworkList /* network_list */)
1543d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_NetworkMonitor_Forbidden)
1544d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)
1545eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// NetworkProxy ----------------------------------------------------------------
1546eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_NetworkProxy_Create)
1547eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1548eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Query the browser for the proxy server to use for the given URL.
1549eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiHostMsg_NetworkProxy_GetProxyForURL,
1550eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     std::string /* url */)
1551eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1552eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Reply message for GetProxyForURL containing the proxy server.
1553eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_NetworkProxy_GetProxyForURLReply,
1554eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     std::string /* proxy */)
1555eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
15562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// TrueTypeFont.
15572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFontSingleton_Create)
15582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFontSingleton_GetFontFamilies)
15592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFontSingleton_GetFontFamiliesReply,
15602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::vector<std::string> /* font_families */)
1561c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TrueTypeFontSingleton_GetFontsInFamily,
1562c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     std::string /* family */)
1563c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFontSingleton_GetFontsInFamilyReply,
1564c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     std::vector<ppapi::proxy::SerializedTrueTypeFontDesc>
1565c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                         /* fonts */)
15662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TrueTypeFont_Create,
15672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::proxy::SerializedTrueTypeFontDesc /* desc */)
15682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFont_Describe)
15692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFont_DescribeReply,
15702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::proxy::SerializedTrueTypeFontDesc /* desc */)
15712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TrueTypeFont_GetTableTags)
15722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFont_GetTableTagsReply,
15732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::vector<uint32_t> /* tags */)
15742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_TrueTypeFont_GetTable,
15752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* table */,
15762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int32_t /* offset */,
15772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int32_t /* max_data_length */)
15782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TrueTypeFont_GetTableReply,
15792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* data */)
15802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1581eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Host Resolver ---------------------------------------------------------------
1582eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Creates a PPB_HostResolver resource.
1583eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_HostResolver_Create)
1584eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1585eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Creates a PPB_HostResolver_Private resource.
1586eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_HostResolver_CreatePrivate)
1587eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1588eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Resolves the given hostname.
1589eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL2(PpapiHostMsg_HostResolver_Resolve,
15902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::HostPortPair /* host_port */,
15912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_HostResolver_Private_Hint /* hint */)
1592eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1593eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// This message is a reply to HostResolver_Resolve. On success,
1594eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// |canonical_name| contains the canonical name of the host; |net_address_list|
1595eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// is a list of network addresses. On failure, both fields are set to empty.
1596eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL2(PpapiPluginMsg_HostResolver_ResolveReply,
15972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* canonical_name */,
15982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::vector<PP_NetAddress_Private> /* net_address_list */)
15992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1600d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// Platform Verification -------------------------------------------------------
1601d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_PlatformVerification_Create)
1602d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_PlatformVerification_ChallengePlatform,
1603d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     std::string /* service_id  */,
1604d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     std::vector<uint8_t> /* challenge */)
1605d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_PlatformVerification_ChallengePlatformReply,
1606d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     std::vector<uint8_t> /* signed_data */,
1607d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     std::vector<uint8_t> /* signed_data_signature */,
1608d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)                     std::string /* platform_key_certificate */)
1609d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)
16105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Printing.
16115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Printing_Create)
16125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Printing_GetDefaultPrintSettings)
16135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Printing_GetDefaultPrintSettingsReply,
16145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_PrintSettings_Dev /* print_settings */)
16155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1616424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)// TCP Socket ------------------------------------------------------------------
1617424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)// Creates a PPB_TCPSocket resource.
161868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TCPSocket_Create,
161968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                     ppapi::TCPSocketVersion /* version */)
1620424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)
1621424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)// Creates a PPB_TCPSocket_Private resource.
1622424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TCPSocket_CreatePrivate)
1623424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)
162468043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TCPSocket_Bind,
162568043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                     PP_NetAddress_Private /* net_addr */)
162668043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TCPSocket_BindReply,
162768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                     PP_NetAddress_Private /* local_addr */)
1628424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_TCPSocket_Connect,
1629424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     std::string /* host */,
1630424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     uint16_t /* port */)
1631424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TCPSocket_ConnectWithNetAddress,
1632424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     PP_NetAddress_Private /* net_addr */)
1633424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_TCPSocket_ConnectReply,
1634424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     PP_NetAddress_Private /* local_addr */,
1635424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     PP_NetAddress_Private /* remote_addr */)
1636424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiHostMsg_TCPSocket_SSLHandshake,
1637424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     std::string /* server_name */,
1638424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     uint16_t /* server_port */,
1639424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     std::vector<std::vector<char> > /* trusted_certs */,
1640424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     std::vector<std::vector<char> > /* untrusted_certs */)
1641424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TCPSocket_SSLHandshakeReply,
1642424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     ppapi::PPB_X509Certificate_Fields /* certificate_fields */)
1643424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TCPSocket_Read,
1644424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     int32_t /* bytes_to_read */)
1645424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_TCPSocket_ReadReply,
1646424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     std::string /* data */)
1647424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TCPSocket_Write,
1648424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     std::string /* data */)
1649424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_TCPSocket_WriteReply)
165068043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_TCPSocket_Listen,
165168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                     int32_t /* backlog */)
165268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_TCPSocket_ListenReply)
165368043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TCPSocket_Accept)
165468043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiPluginMsg_TCPSocket_AcceptReply,
165568043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                     int /* pending_host_id*/,
165668043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                     PP_NetAddress_Private /* local_addr */,
165768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)                     PP_NetAddress_Private /* remote_addr */)
165868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TCPSocket_Close)
1659424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_TCPSocket_SetOption,
1660424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     PP_TCPSocket_Option /* name */,
1661424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     ppapi::SocketOptionData /* value */)
1662424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_TCPSocket_SetOptionReply)
1663424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)
16642385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch// TCP Server Socket -----------------------------------------------------------
16652385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch// Creates a PPB_TCPServerSocket_Private resource.
16662385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_TCPServerSocket_CreatePrivate)
16672385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch
16682385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen MurdochIPC_MESSAGE_CONTROL2(PpapiHostMsg_TCPServerSocket_Listen,
16692385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch                     PP_NetAddress_Private /* addr */,
16702385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch                     int32_t /* backlog */)
16712385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_TCPServerSocket_ListenReply,
16722385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch                     PP_NetAddress_Private /* local_addr */)
1673424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_TCPServerSocket_Accept)
16742385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen MurdochIPC_MESSAGE_CONTROL3(PpapiPluginMsg_TCPServerSocket_AcceptReply,
1675424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)                     int /* pending_resource_id */,
16762385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch                     PP_NetAddress_Private /* local_addr */,
16772385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch                     PP_NetAddress_Private /* remote_addr */)
16782385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_TCPServerSocket_StopListening)
16792385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch
1680eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// UDP Socket ------------------------------------------------------------------
1681eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Creates a PPB_UDPSocket resource.
1682eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_UDPSocket_Create)
1683eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1684eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// Creates a PPB_UDPSocket_Private resource.
1685eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_UDPSocket_CreatePrivate)
1686eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1687eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL2(PpapiHostMsg_UDPSocket_SetOption,
1688eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_UDPSocket_Option /* name */,
1689eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     ppapi::SocketOptionData /* value */)
1690eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiPluginMsg_UDPSocket_SetOptionReply)
1691eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiHostMsg_UDPSocket_Bind,
1692eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_NetAddress_Private /* net_addr */)
1693eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_UDPSocket_BindReply,
1694eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_NetAddress_Private /* bound_addr */)
1695eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiHostMsg_UDPSocket_RecvFrom,
1696eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     int32_t /* num_bytes */)
1697eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL2(PpapiPluginMsg_UDPSocket_RecvFromReply,
1698eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     std::string /* data */,
1699eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_NetAddress_Private /* remote_addr */)
1700eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL2(PpapiHostMsg_UDPSocket_SendTo,
1701eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     std::string /* data */,
1702eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_NetAddress_Private /* net_addr */)
1703eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_UDPSocket_SendToReply,
1704eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     int32_t /* bytes_written */)
1705eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_UDPSocket_Close)
1706eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
170790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// URLLoader ------------------------------------------------------------------
170890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
170990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_URLLoader_Create)
171090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
171190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// These messages correspond to PPAPI calls and all should get a
171290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// CallbackComplete message.
171390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_URLLoader_Open,
171490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     ppapi::URLRequestInfoData /* request_data */)
171590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
171690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// The plugin can tell the host to defer a load to hold off on sending more
171790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// data because the buffer in the plugin is full. When defers_loading is set to
171890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// false, data streaming will resume.
171990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)//
172090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// When auditing redirects (no auto follow) the load will be automatically
172190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// deferred each time we get a redirect. The plugin will reset this to false
172290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// by sending this message when it wants to continue following the redirect.
172390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)//
172490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// When streaming data, the host may still send more data after this call (for
172590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// example, it could already be in-flight at the time of this request).
172690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_URLLoader_SetDeferLoading,
172790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     bool /* defers_loading */)
172890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
172990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Closes the URLLoader. There is no reply.
173090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_URLLoader_Close)
173190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
173290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Requests that cross-site restrictions be ignored. The plugin must have
173390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// the private permission set. Otherwise this message will be ignored by the
173490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// renderer. There is no reply.
173590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_URLLoader_GrantUniversalAccess)
173690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
173790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Push notification that a response is available.
173890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_URLLoader_ReceivedResponse,
173990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     ppapi::URLResponseInfoData /* response */)
174090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
174190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Push notification with load data from the renderer. It is a custom generated
174290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// message with the response data (array of bytes stored via WriteData)
174390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// appended.
174490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_URLLoader_SendData)
174590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
174690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Push notification indicating that all data has been sent, either via
174790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// SendData or by streaming it to a file. Note that since this is a push
174890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// notification, we don't use the result field of the ResourceMessageReply.
174990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_URLLoader_FinishedLoading,
175090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     int32_t /* result */)
175190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
175290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Push notification from the renderer to the plugin to tell it about download
175390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// and upload progress. This will only be sent if the plugin has requested
175490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// progress updates, and only the fields requested by the plugin will be
175590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// valid.
175690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiPluginMsg_URLLoader_UpdateProgress,
175790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     int64_t /* bytes_sent */,
175890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     int64_t /* total_bytes_to_be_sent */,
175990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     int64_t /* bytes_received */,
176090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                     int64_t /* total_bytes_to_be_received */)
176190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
17622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Shared memory ---------------------------------------------------------------
176390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
17642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Creates shared memory on the host side, returning a handle to the shared
17652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// memory on the plugin and keeping the memory mapped in on the host.
17662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// We return a "host handle_id" that can be mapped back to the
17672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// handle on the host side by PpapiGlobals::UntrackSharedMemoryHandle().
17682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_SYNC_MESSAGE_CONTROL2_2(PpapiHostMsg_SharedMemory_CreateSharedMemory,
17692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                            PP_Instance /* instance */,
17702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                            uint32_t /* size */,
17712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                            int /* host_handle_id */,
17722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                            ppapi::proxy::SerializedHandle /* plugin_handle */)
17732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1774eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// MediaStream -----------------------------------------------------------------
1775eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1776eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// VideoDestination Private.
1777eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoDestination_Create)
1778eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiHostMsg_VideoDestination_Open,
1779eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     std::string /* stream_url */)
1780eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoDestination_OpenReply)
1781eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL2(PpapiHostMsg_VideoDestination_PutFrame,
1782eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     ppapi::HostResource /* image_data */,
1783eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_TimeTicks /* timestamp */)
1784eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoDestination_Close)
1785eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
1786eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch// VideoSource Private.
1787eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoSource_Create)
1788eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL1(PpapiHostMsg_VideoSource_Open,
1789eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     std::string /* stream_url */)
1790eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoSource_OpenReply)
1791eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoSource_GetFrame)
1792eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL3(PpapiPluginMsg_VideoSource_GetFrameReply,
1793eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     ppapi::HostResource /* resource_id */,
1794eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_ImageDataDesc /* image_data_desc */,
1795eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch                     PP_TimeTicks /* timestamp */)
1796eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoSource_Close)
1797eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch
179890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// WebSocket -------------------------------------------------------------------
179990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
18005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_WebSocket_Create)
18015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Establishes the connection to a server. This message requires
18035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// WebSocket_ConnectReply as a reply message.
18045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_WebSocket_Connect,
18055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* url */,
18065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::vector<std::string> /* protocols */)
18075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Closes established connection with graceful closing handshake. This message
18095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// requires WebSocket_CloseReply as a reply message.
18105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_WebSocket_Close,
18115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     int32_t /* code */,
18125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* reason */)
18135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Sends a text frame to the server. No reply is defined.
18155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_WebSocket_SendText,
18165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* message */)
18175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Sends a binary frame to the server. No reply is defined.
18195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_WebSocket_SendBinary,
18205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::vector<uint8_t> /* message */)
18215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Fails the connection. This message invokes RFC6455 defined
18235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// _Fail the WebSocket Connection_ operation. No reply is defined.
18245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_WebSocket_Fail,
18255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* message */)
18265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This message is a reply to WebSocket_Connect. If the |url| and |protocols|
18285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// are invalid, WebSocket_ConnectReply is issued immediately and it contains
18295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// proper error code in its result. Otherwise, WebSocket_ConnectReply is sent
18305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// with valid |url|, |protocol|, and result PP_OK. |protocol| is not a passed
18315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// |protocols|, but a result of opening handshake negotiation. If the
18325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// connection can not be established successfully, WebSocket_ConnectReply is
18335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// not issued, but WebSocket_ClosedReply is sent instead.
18345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_WebSocket_ConnectReply,
18355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* url */,
18365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* protocol */)
18375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This message is a reply to WebSocket_Close. If the operation fails,
18395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// WebSocket_CloseReply is issued immediately and it contains PP_ERROR_FAILED.
18405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Otherwise, CloseReply will be issued after the closing handshake is
18415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// finished. All arguments will be valid iff the result is PP_OK and it means
18425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// that the client initiated closing handshake is finished gracefully.
18435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiPluginMsg_WebSocket_CloseReply,
18445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint64_t /* buffered_amount */,
18455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* was_clean */,
18465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint16_t /* code */,
18475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* reason */)
18485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Unsolicited reply message to transmit a receiving text frame.
18505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_ReceiveTextReply,
18515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* message */)
18525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Unsolicited reply message to transmit a receiving binary frame.
18545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_ReceiveBinaryReply,
18555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::vector<uint8_t> /* message */)
18565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Unsolicited reply message to notify a error on underlying network connetion.
18585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_WebSocket_ErrorReply)
18595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Unsolicited reply message to update the buffered amount value.
18615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_BufferedAmountReply,
18625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint64_t /* buffered_amount */)
18635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Unsolicited reply message to update |state| because of incoming external
18655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// events, e.g., protocol error, or unexpected network closure.
18665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_WebSocket_StateReply,
18675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     int32_t /* state */)
18685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Unsolicited reply message to notify that the connection is closed without
18705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// any WebSocket_Close request. Server initiated closing handshake or
18715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// unexpected network errors will invoke this message.
18725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiPluginMsg_WebSocket_ClosedReply,
18735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint64_t /* buffered_amount */,
18745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     bool /* was_clean */,
18755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint16_t /* code */,
18765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* reason */)
18775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18784e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// OutputProtection -----------------------------------------------------------
18794e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
18804e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_OutputProtection_Create)
18814e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_OutputProtection_EnableProtection,
18824e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                     uint32_t /* desired_method_mask */)
18834e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_OutputProtection_EnableProtectionReply)
18844e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_OutputProtection_QueryStatus)
18854e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_OutputProtection_QueryStatusReply,
18864e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                     uint32_t /* link_mask */,
18874e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)                     uint32_t /* protection_mask */)
18884e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
188946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// VideoDecoder ------------------------------------------------------
189046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
189146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoDecoder_Create)
189246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_VideoDecoder_Initialize,
189346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     ppapi::HostResource /* graphics_context */,
189446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     PP_VideoProfile /* profile */,
189546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     bool /* allow_software_fallback */)
189646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoDecoder_InitializeReply)
189746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_VideoDecoder_GetShm,
189846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* shm_id */,
189946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* shm_size */)
190046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)// On success, a shm handle is passed in the ReplyParams struct.
190146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoDecoder_GetShmReply,
190246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* shm_size */)
190346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_VideoDecoder_Decode,
190446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* shm_id */,
190546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* size */,
190646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     int32_t /* decode_id */)
190746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoDecoder_DecodeReply,
190846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* shm_id */)
1909f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)IPC_MESSAGE_CONTROL4(PpapiPluginMsg_VideoDecoder_RequestTextures,
191046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* num_textures */,
191146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     PP_Size /* size */,
1912f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     uint32_t /* texture_target */,
1913f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)                     std::vector<gpu::Mailbox> /* mailboxes*/)
191446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_VideoDecoder_AssignTextures,
191546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     PP_Size /* size */,
191646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     std::vector<uint32_t> /* texture_ids */)
191746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_VideoDecoder_PictureReady,
191846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     int32_t /* decode_id */,
191946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* texture_id */)
192046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_VideoDecoder_RecyclePicture,
192146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* texture_id */)
192246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoDecoder_DismissPicture,
192346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     uint32_t /* texture_id */)
192446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoDecoder_Flush)
192546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoDecoder_FlushReply)
192646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoDecoder_Reset)
192746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoDecoder_ResetReply)
192846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoDecoder_NotifyError,
192946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)                     int32_t /* error */)
193046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)
19315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_NACL) && !defined(NACL_WIN64)
19325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
19335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Audio input.
19345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_AudioInput_Create)
19355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_AudioInput_Open,
19365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* device_id */,
19375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_AudioSampleRate /* sample_rate */,
19385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* sample_frame_count */)
19395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Reply to an Open call. This supplies a socket handle and a shared memory
19405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// handle. Both handles are passed in the ReplyParams struct.
19415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_AudioInput_OpenReply)
19425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_AudioInput_StartOrStop, bool /* capture */)
19435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_AudioInput_Close)
19445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
19452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// BrowserFont -----------------------------------------------------------------
19462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_BrowserFontSingleton_Create)
19482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Requests that the browser reply with the list of font families via
19502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// PpapiPluginMsg_BrowserFontSingleton_GetFontFamiliesReply.
19512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_BrowserFontSingleton_GetFontFamilies)
19522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Reply to PpapiHostMsg_BrowserFontSingleton_GetFontFamilies with the font
19542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// family list. The |families| result is encoded by separating each family name
19552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// by a null character.
19562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_BrowserFontSingleton_GetFontFamiliesReply,
19572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* families */)
19582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Flash -----------------------------------------------------------------------
19602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_Create)
19622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Message to notify the browser to register an update in system activity.
19642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_UpdateActivity)
19652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Query the browser for the proxy server to use for the given URL.
19672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_GetProxyForURL, std::string /* url */)
19682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Reply message for GetProxyForURL containing the proxy server.
19692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Flash_GetProxyForURLReply,
19702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* proxy */)
19712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Queries the browser for the local time zone offset for a given time.
19732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_GetLocalTimeZoneOffset,
19742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     base::Time /* time */)
19752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Reply to GetLocalTimeZoneOffset containing the time zone offset as a double.
19762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Flash_GetLocalTimeZoneOffsetReply,
19772a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     double /* offset */)
19782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Query the browser for the restrictions on storing Flash LSOs.
19802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_GetLocalDataRestrictions)
19812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Reply message for GetLocalDataRestrictions containing the restrictions to
19822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// use. These are PP_FlashLSORestrictions cast to an int32_t.
19832a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Flash_GetLocalDataRestrictionsReply,
19842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int32_t /* restrictions */)
19852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Notifies the renderer whether the Flash instance is in windowed mode. No
19872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// reply is sent.
19882a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_SetInstanceAlwaysOnTop,
19892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     bool /* on_top */)
19902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Notifies the renderer to draw text to the given PP_ImageData resource. All
19922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// parmeters for drawing (including the resource to draw to) are contianed in
19932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// the PPBFlash_DrawGlyphs_Params structure. An error code is sent in a reply
19942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// message indicating success.
19952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_DrawGlyphs,
19962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::proxy::PPBFlash_DrawGlyphs_Params /* params */)
19972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
19982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Notifies the renderer to navigate to the given URL contained in the
19992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// URLRequestInfoData. An error code is sent in a reply message indicating
20002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// success.
20012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_Flash_Navigate,
20022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::URLRequestInfoData /* data */,
20032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* target */,
20042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     bool /* from_user_action */)
20052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
20062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Queries the renderer on whether the plugin instance is the topmost element
20072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// in the area of the instance specified by the given PP_Rect. PP_OK is sent as
20082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// the error code in a reply message if the rect is topmost otherwise
20092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// PP_ERROR_FAILED is sent.
20102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Flash_IsRectTopmost,
20112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Rect /* rect */)
20122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
20132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Notifies the renderer to invoke printing for the given plugin instance. No
20142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// reply is sent.
20152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Flash_InvokePrinting)
20162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
20172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// DeviceEnumeration -----------------------------------------------------------
20182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Device enumeration messages used by audio input and video capture.
20192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_DeviceEnumeration_EnumerateDevices)
20202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_DeviceEnumeration_EnumerateDevicesReply,
20212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::vector<ppapi::DeviceRefData> /* devices */)
20222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_DeviceEnumeration_MonitorDeviceChange,
20232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* callback_id */)
20242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_DeviceEnumeration_StopMonitoringDeviceChange)
20252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_DeviceEnumeration_NotifyDeviceChange,
20262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* callback_id */,
20272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::vector<ppapi::DeviceRefData> /* devices */)
20282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
20295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Flash clipboard.
20305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashClipboard_Create)
20315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashClipboard_RegisterCustomFormat,
20325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* format_name */)
20335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashClipboard_RegisterCustomFormatReply,
20345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* format */)
20355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashClipboard_IsFormatAvailable,
20365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* clipboard_type */,
20375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* format */)
20385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashClipboard_ReadData,
20395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* clipboard_type */,
20405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* format */)
20415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashClipboard_ReadDataReply,
20425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* result */)
20435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_FlashClipboard_WriteData,
20445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* clipboard_type */,
20455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::vector<uint32_t> /* formats */,
20465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::vector<std::string> /* data */)
20475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashClipboard_GetSequenceNumber,
20485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     uint32_t /* clipboard_type */)
20495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashClipboard_GetSequenceNumberReply,
20505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     uint64_t /* sequence_number */)
20515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2052effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Flash DRM.
2053effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashDRM_Create)
2054effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
2055effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Requests the device ID.
2056effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashDRM_GetDeviceID)
2057effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Reply for GetDeviceID which includes the device ID as a string.
2058effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashDRM_GetDeviceIDReply,
2059effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                     std::string /* id */)
2060effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
2061effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Requests the HMONITOR corresponding to the monitor on which the instance is
2062effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// displayed.
2063effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashDRM_GetHmonitor)
2064effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Reply message for GetHmonitor which contains the HMONITOR as an int64_t.
2065effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashDRM_GetHmonitorReply,
2066effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                     int64_t /* hmonitor */)
2067effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
2068effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Requests the voucher file which is used to verify the integrity of the Flash
2069effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// module. A PPB_FileRef resource will be created.
2070effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashDRM_GetVoucherFile)
2071effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Reply message for GetVoucherFile which contains the CreateInfo for a
2072effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// PPB_FileRef which points to the voucher file.
2073effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashDRM_GetVoucherFileReply,
2074effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                     ppapi::FileRefCreateInfo /* file_info */)
2075effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
2076effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Requests a value indicating whether the monitor on which the instance is
2077effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// displayed is external.
2078effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashDRM_MonitorIsExternal)
2079effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Reply message for MonitorIsExternal which contains the value indicating if
2080effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// the monitor is external.
2081effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashDRM_MonitorIsExternalReply,
2082effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                     PP_Bool /* is_external */)
2083effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
20842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Flash file.
20852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashFile_Create)
20862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFile_OpenFile,
20872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::PepperFilePath /* path */,
2088a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)                     int /* pp_open_flags */)
20892a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFile_RenameFile,
20902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::PepperFilePath /* from_path */,
20912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::PepperFilePath /* to_path */)
20922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFile_DeleteFileOrDir,
20932a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::PepperFilePath /* path */,
20942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     bool /* recursive */)
20952a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFile_CreateDir,
20962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::PepperFilePath /* path */)
20972a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFile_QueryFile,
20982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::PepperFilePath /* path */)
20992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashFile_QueryFileReply,
21005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     base::File::Info /* file_info */)
21012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFile_GetDirContents,
21022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::PepperFilePath /* path */)
21032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashFile_GetDirContentsReply,
21042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::DirContents /* entries */)
21052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashFile_CreateTemporaryFile)
21062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
21075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Flash font file.
21085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_FlashFontFile_Create,
21095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     ppapi::proxy::SerializedFontDescription /* description */,
21105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     PP_PrivateFontCharset /* charset */)
21115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFontFile_GetFontTable,
21125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     uint32_t /* table */)
21135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashFontFile_GetFontTableReply,
21145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                     std::string /* output */)
21155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
21162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Flash fullscreen.
21172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_FlashFullscreen_Create)
21182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashFullscreen_SetFullscreen,
21192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     bool /* fullscreen */)
21202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
2121effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// FlashMenu.
21222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
21232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Creates the flash menu with the given data.
21242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashMenu_Create,
21252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     ppapi::proxy::SerializedFlashMenu /* menu_data */)
21262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
21272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Shows the menu at the given location relative to the plugin instance.
21282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_FlashMenu_Show,
21292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_Point /* location */)
21302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
21312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Reply to a show command. If the resource reply is PP_OK, the selected_id
21322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// will be the menu item ID chosen by the user.
21332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_FlashMenu_ShowReply,
21342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     int32_t /* selected_id */)
21352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
2136effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// PPB_Flash_MessageLoop.
2137effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Create,
2138effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                           PP_Instance /* instance */,
2139effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                           ppapi::HostResource /* result */)
2140effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_SYNC_MESSAGE_ROUTED1_1(PpapiHostMsg_PPBFlashMessageLoop_Run,
2141effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                           ppapi::HostResource /* flash_message_loop */,
2142effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                           int32_t /* result */)
2143effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochIPC_SYNC_MESSAGE_ROUTED1_0(PpapiHostMsg_PPBFlashMessageLoop_Quit,
2144effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch                           ppapi::HostResource /* flash_message_loop */)
2145effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
2146c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// PDF ------------------------------------------------------------------------
2147c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2148c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Creates the PDF resource.
2149c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_Create)
2150c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2151c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Requests the localized string for the given ID.
2152c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_GetLocalizedString,
2153c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     PP_ResourceString /* string_id */)
2154c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Reply for PpapiHostMsg_PDF_GetLocalizedString containing the localized
2155c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// string.
2156c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_PDF_GetLocalizedStringReply,
2157c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     std::string /* localized_string*/)
2158c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2159c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Notifies the renderer that the PDF started loading.
2160c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_DidStartLoading)
2161c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2162c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Notifies the renderer that the PDF stopped loading.
2163c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_DidStopLoading)
2164c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2165c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Sets any restrictions on the PDF content.
2166c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_SetContentRestriction,
2167c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     int /* restrictions */)
2168c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2169c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Requests that the specified action be recorded with UMA.
2170c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_UserMetricsRecordAction,
2171c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     std::string /* action */)
2172c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2173c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Notifies the renderer that the current PDF uses an unsupported feature.
2174c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_HasUnsupportedFeature)
2175c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2176c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Notifies the renderer to print the current PDF.
2177c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_Print)
2178c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2179c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Notifies the renderer to save the current PDF.
2180c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_PDF_SaveAs)
2181c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
2182c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Requests a resource image for the plugin at a particular scale.
2183c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiHostMsg_PDF_GetResourceImage,
2184c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     PP_ResourceImage /* image_id */,
2185c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     float /* scale */)
21867d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
2187c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Reply for PpapiHostMsg_PDF_GetResourceImage containing the host resource id
218890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// of the image and a PP_ImageDataDesc which describes the image. Also carries
21897d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)// a shared memory handle pointing to the memory containg the image.
21907d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)IPC_MESSAGE_CONTROL2(PpapiPluginMsg_PDF_GetResourceImageReply,
2191c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)                     ppapi::HostResource /* resource_id */,
21927d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)                     PP_ImageDataDesc /* image_data_desc */)
2193c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
21945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Called by the plugin when its selection changes.
21955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_SetSelectedText,
21965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     base::string16 /* selected_text */)
21975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
21985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Called by the plugin to set the link under the cursor.
21995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_PDF_SetLinkUnderCursor,
22005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                     std::string /* url */)
22015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
22022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// VideoCapture_Dev, plugin -> host
22032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_Create)
22042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_StartCapture)
22052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_VideoCapture_ReuseBuffer,
22062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* buffer */)
22072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_StopCapture)
22082a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_VideoCapture_Close)
22092a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
22102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// VideoCapture_Dev, plugin -> host -> plugin
22112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiHostMsg_VideoCapture_Open,
22122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::string /* device_id */,
22132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_VideoCaptureDeviceInfo_Dev /* requested_info */,
22142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* buffer_count */)
22152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_VideoCapture_OpenReply)
22162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
22172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// VideoCapture_Dev, host -> plugin
22182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL3(PpapiPluginMsg_VideoCapture_OnDeviceInfo,
22192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     PP_VideoCaptureDeviceInfo_Dev /* info */,
22202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     std::vector<ppapi::HostResource> /* buffers */,
22212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* buffer_size */)
22222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoCapture_OnStatus,
22232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* status */)
22242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoCapture_OnError,
22252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* error */)
22262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_VideoCapture_OnBufferReady,
22272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                     uint32_t /* buffer */)
22282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
2229868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)// Talk ------------------------------------------------------------------------
2230868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)
2231868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Talk_Create)
2232868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiHostMsg_Talk_RequestPermission,
2233868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)                     PP_TalkPermission /* permission */)
2234868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Talk_RequestPermissionReply)
2235868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Talk_StartRemoting)
2236868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Talk_StartRemotingReply)
2237868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiHostMsg_Talk_StopRemoting)
2238868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL0(PpapiPluginMsg_Talk_StopRemotingReply)
2239868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)IPC_MESSAGE_CONTROL1(PpapiPluginMsg_Talk_NotifyEvent, PP_TalkEvent /* event */)
2240868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)
22415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // !defined(OS_NACL) && !defined(NACL_WIN64)
2242