- add sources.
[platform/framework/web/crosswalk.git] / src / ppapi / api / private / finish_writing_these / ppb_flash_file.idl
1 /* Copyright (c) 2012 The Chromium Authors. All rights reserved.
2  * Use of this source code is governed by a BSD-style license that can be
3  * found in the LICENSE file.
4  */
5
6 /* This file contains PPB_Flash_File interface. */
7
8 /* A directory entry. */
9 struct PP_DirEntry_Dev {
10   str_t name;
11   PP_Bool is_dir;
12 };
13
14 /* Directory. */
15 struct PP_DirContents_Dev {
16   int32_t count;
17   [size_is(count)] PP_DirEntry_Dev[] entries;
18 };
19
20 /* PPB_Flash_File_ModuleLocal */
21 interface PPB_Flash_File_ModuleLocal_0_1 {
22   /* Opens a module-local file, returning a file descriptor (posix) or a HANDLE
23    * (win32) into file. Module-local file paths (here and below) are
24    * '/'-separated UTF-8 strings, relative to a module-specific root. The return
25    * value is the ppapi error, PP_OK if success, one of the PP_ERROR_* in case
26    * of failure
27    */
28   int32_t OpenFile(
29       [in] PP_Instance instance,
30       [in] str_t path,
31       [in] int32_t mode,
32       [out] PP_FileHandle file);
33
34   /* Renames a module-local file. The return value is the ppapi error, PP_OK if
35    * success, one of the PP_ERROR_* in case of failure.
36    */
37   int32_t RenameFile(
38       [in] PP_Instance instance,
39       [in] str_t path_from,
40       [in] str_t path_to);
41
42   /* Deletes a module-local file or directory. If recursive is set and the path
43    * points to a directory, deletes all the contents of the directory. The
44    * return value is the ppapi error, PP_OK if success, one of the PP_ERROR_* in
45    * case of failure.
46    */
47   int32_t DeleteFileOrDir(
48       [in] PP_Instance instance,
49       [in] str_t path,
50       [in] PP_Bool recursive);
51
52   /* Creates a module-local directory. The return value is the ppapi error,
53    * PP_OK if success, one of the PP_ERROR_* in case of failure.
54    */
55   int32_t CreateDir(
56       [in] PP_Instance instance,
57       [in] str_t path);
58
59   /* Queries information about a module-local file. The return value is the
60    * ppapi error, PP_OK if success, one of the PP_ERROR_* in case of failure.
61    */
62   int32_t QueryFile(
63       [in] PP_Instance instance,
64       [in] str_t path,
65       [out] PP_FileInfo info);
66
67   /* Gets the list of files contained in a module-local directory. The return
68    * value is the ppapi error, PP_OK if success, one of the PP_ERROR_* in case
69    * of failure. If non-NULL, the returned contents should be freed with
70    * FreeDirContents.
71    */
72   int32_t GetDirContents(
73       [in] PP_Instance instance,
74       [in] str_t path,
75       [out] PP_DirContents_Dev contents);
76
77   /* Frees the data allocated by GetDirContents. */
78   void FreeDirContents(
79       [in] PP_Instance instance,
80       [in] PP_DirContents_Dev contents);
81 };