Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(246)

Unified Diff: ppapi/c/trusted/ppb_file_io_trusted.h

Issue 7242002: Sang's initial CL for moving the file interface out of dev. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ppapi/c/trusted/ppb_file_io_trusted.h
===================================================================
--- ppapi/c/trusted/ppb_file_io_trusted.h (revision 0)
+++ ppapi/c/trusted/ppb_file_io_trusted.h (revision 0)
@@ -0,0 +1,47 @@
+/* Copyright (c) 2011 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.
+ */
+#ifndef PPAPI_C_PPB_FILE_IO_TRUSTED_H_
+#define PPAPI_C_PPB_FILE_IO_TRUSTED_H_
+
+#include "ppapi/c/pp_resource.h"
+#include "ppapi/c/pp_stdint.h"
+
+struct PP_CompletionCallback;
+
+#define PPB_FILEIOTRUSTED_INTERFACE_0_3 "PPB_FileIOTrusted(Dev);0.3"
+#define PPB_FILEIOTRUSTED_INTERFACE PPB_FILEIOTRUSTED_INTERFACE_0_3
+
+// Available only to trusted implementations.
+struct PPB_FileIOTrusted {
+ // Returns a file descriptor corresponding to the given FileIO object. On
+ // Windows, returns a HANDLE; on all other platforms, returns a POSIX file
+ // descriptor. The FileIO object must have been opened with a successful
+ // call to FileIO::Open. The file descriptor will be closed automatically
+ // when the FileIO object is closed or destroyed.
+ int32_t (*GetOSFileDescriptor)(PP_Resource file_io);
+
+ // Notifies the browser that underlying file will be modified. This gives
+ // the browser the opportunity to apply quota restrictions and possibly
+ // return an error to indicate that the write is not allowed.
+ int32_t (*WillWrite)(PP_Resource file_io,
+ int64_t offset,
+ int32_t bytes_to_write,
+ struct PP_CompletionCallback callback);
+
+ // Notifies the browser that underlying file will be modified. This gives
+ // the browser the opportunity to apply quota restrictions and possibly
+ // return an error to indicate that the write is not allowed.
+ int32_t (*WillSetLength)(PP_Resource file_io,
+ int64_t length,
+ struct PP_CompletionCallback callback);
+
+ // TODO(darin): Maybe unify the above into a single WillChangeFileSize
+ // method? The above methods have the advantage of mapping to PPB_FileIO
+ // Write and SetLength calls. WillChangeFileSize would require the caller to
+ // compute the file size resulting from a Write call, which may be
+ // undesirable.
+};
+
+#endif /* PPAPI_C_PPB_FILE_IO_TRUSTED_H_ */
« no previous file with comments | « ppapi/c/ppb_file_system.h ('k') | ppapi/cpp/file_io.h » ('j') | ppapi/cpp/file_io.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698