srpcgen: Use 'const char*' for string parameters
[chromium-blink-merge.git] / content / common / pepper_file_messages.h
blob941824d710f8c83ff6768ade7d16e320b4bef14e
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Multiply-included message file, no traditional include guard.
6 #include "content/public/common/common_param_traits.h"
7 #include "ipc/ipc_message_macros.h"
8 #include "ipc/ipc_param_traits.h"
9 #include "ipc/ipc_platform_file.h"
10 #include "webkit/plugins/ppapi/dir_contents.h"
11 #include "webkit/plugins/ppapi/file_path.h"
13 // Singly-included section since need custom serialization.
14 #ifndef CONTENT_COMMON_PEPPER_FILE_MESSAGES_H_
15 #define CONTENT_COMMON_PEPPER_FILE_MESSAGES_H_
17 namespace IPC {
19 template <>
20 struct ParamTraits<webkit::ppapi::PepperFilePath> {
21 typedef webkit::ppapi::PepperFilePath param_type;
22 static void Write(Message* m, const param_type& p);
23 static bool Read(const Message* m, void** iter, param_type* p);
24 static void Log(const param_type& p, std::string* l);
27 } // namespace IPC
29 #endif // CONTENT_COMMON_PEPPER_FILE_MESSAGES_H_
31 #define IPC_MESSAGE_START PepperFileMsgStart
33 IPC_STRUCT_TRAITS_BEGIN(webkit::ppapi::DirEntry)
34 IPC_STRUCT_TRAITS_MEMBER(name)
35 IPC_STRUCT_TRAITS_MEMBER(is_dir)
36 IPC_STRUCT_TRAITS_END()
38 // Trusted Pepper Filesystem messages from the renderer to the browser.
40 // Open the file.
41 IPC_SYNC_MESSAGE_CONTROL2_2(PepperFileMsg_OpenFile,
42 webkit::ppapi::PepperFilePath /* path */,
43 int /* flags */,
44 base::PlatformFileError /* error_code */,
45 IPC::PlatformFileForTransit /* result */)
47 // Rename the file.
48 IPC_SYNC_MESSAGE_CONTROL2_1(PepperFileMsg_RenameFile,
49 webkit::ppapi::PepperFilePath /* from_path */,
50 webkit::ppapi::PepperFilePath /* to_path */,
51 base::PlatformFileError /* error_code */)
53 // Delete the file.
54 IPC_SYNC_MESSAGE_CONTROL2_1(PepperFileMsg_DeleteFileOrDir,
55 webkit::ppapi::PepperFilePath /* path */,
56 bool /* recursive */,
57 base::PlatformFileError /* error_code */)
59 // Create the directory.
60 IPC_SYNC_MESSAGE_CONTROL1_1(PepperFileMsg_CreateDir,
61 webkit::ppapi::PepperFilePath /* path */,
62 base::PlatformFileError /* error_code */)
64 // Query the file's info.
65 IPC_SYNC_MESSAGE_CONTROL1_2(PepperFileMsg_QueryFile,
66 webkit::ppapi::PepperFilePath /* path */,
67 base::PlatformFileInfo, /* info */
68 base::PlatformFileError /* error_code */)
70 // Get the directory's contents.
71 IPC_SYNC_MESSAGE_CONTROL1_2(PepperFileMsg_GetDirContents,
72 webkit::ppapi::PepperFilePath /* path */,
73 webkit::ppapi::DirContents, /* contents */
74 base::PlatformFileError /* error_code */)