summaryrefslogtreecommitdiffstats
path: root/ppapi/c
diff options
context:
space:
mode:
authoryzshen@chromium.org <yzshen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-15 22:56:53 +0000
committeryzshen@chromium.org <yzshen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-15 22:56:53 +0000
commit481a4b7f34565ef087c8aa44c8e04f9f0e466b2d (patch)
tree58a27508ef38cecf35d478710ee9039aa9a2cea0 /ppapi/c
parente5d5b0e8f45962bbb5cba1a6dd9a3b31eadb9429 (diff)
downloadchromium_src-481a4b7f34565ef087c8aa44c8e04f9f0e466b2d.zip
chromium_src-481a4b7f34565ef087c8aa44c8e04f9f0e466b2d.tar.gz
chromium_src-481a4b7f34565ef087c8aa44c8e04f9f0e466b2d.tar.bz2
Add CreateTemporaryFile to PPB_Flash_File_ModuleLocal.
BUG=129807 TEST=None Review URL: https://chromiumcodereview.appspot.com/10534045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142512 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/c')
-rw-r--r--ppapi/c/private/ppb_flash_file.h45
1 files changed, 41 insertions, 4 deletions
diff --git a/ppapi/c/private/ppb_flash_file.h b/ppapi/c/private/ppb_flash_file.h
index ac8c0fb..521ab39 100644
--- a/ppapi/c/private/ppb_flash_file.h
+++ b/ppapi/c/private/ppb_flash_file.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -34,13 +34,15 @@ struct PP_DirContents_Dev {
};
// PPB_Flash_File_ModuleLocal --------------------------------------------------
-
-#define PPB_FLASH_FILE_MODULELOCAL_INTERFACE "PPB_Flash_File_ModuleLocal;2"
+#define PPB_FLASH_FILE_MODULELOCAL_INTERFACE_2_0 "PPB_Flash_File_ModuleLocal;2"
+#define PPB_FLASH_FILE_MODULELOCAL_INTERFACE_3_0 "PPB_Flash_File_ModuleLocal;3"
+#define PPB_FLASH_FILE_MODULELOCAL_INTERFACE \
+ PPB_FLASH_FILE_MODULELOCAL_INTERFACE_3_0
// This interface provides (for Flash) synchronous access to module-local files.
// Module-local file paths are '/'-separated UTF-8 strings, relative to a
// module-specific root.
-struct PPB_Flash_File_ModuleLocal {
+struct PPB_Flash_File_ModuleLocal_3_0 {
// Does initialization necessary for proxying this interface on background
// threads. You must always call this function before using any other
// function in this interface for a given instance ID.
@@ -97,8 +99,43 @@ struct PPB_Flash_File_ModuleLocal {
// Frees the data allocated by GetDirContents.
void (*FreeDirContents)(PP_Instance instance,
struct PP_DirContents_Dev* contents);
+
+ // Creates a temporary file. The file will be automatically deleted when all
+ // handles to it are closed.
+ // Returns PP_OK if successful, one of the PP_ERROR_* values in case of
+ // failure.
+ //
+ // If successful, |file| is set to a file descriptor (posix) or a HANDLE
+ // (win32) to the file. If failed, |file| is not touched.
+ int32_t (*CreateTemporaryFile)(PP_Instance instance, PP_FileHandle* file);
+};
+
+struct PPB_Flash_File_ModuleLocal_2_0 {
+ bool (*CreateThreadAdapterForInstance)(PP_Instance instance);
+ void (*ClearThreadAdapterForInstance)(PP_Instance instance);
+ int32_t (*OpenFile)(PP_Instance instance,
+ const char* path,
+ int32_t mode,
+ PP_FileHandle* file);
+ int32_t (*RenameFile)(PP_Instance instance,
+ const char* path_from,
+ const char* path_to);
+ int32_t (*DeleteFileOrDir)(PP_Instance instance,
+ const char* path,
+ PP_Bool recursive);
+ int32_t (*CreateDir)(PP_Instance instance, const char* path);
+ int32_t (*QueryFile)(PP_Instance instance,
+ const char* path,
+ struct PP_FileInfo* info);
+ int32_t (*GetDirContents)(PP_Instance instance,
+ const char* path,
+ struct PP_DirContents_Dev** contents);
+ void (*FreeDirContents)(PP_Instance instance,
+ struct PP_DirContents_Dev* contents);
};
+typedef struct PPB_Flash_File_ModuleLocal_3_0 PPB_Flash_File_ModuleLocal;
+
// PPB_Flash_File_FileRef ------------------------------------------------------
#define PPB_FLASH_FILE_FILEREF_INTERFACE "PPB_Flash_File_FileRef;2"