1 /* Copyright 2013 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 [generate_thunk,thunk_include="ppapi/thunk/ppb_isolated_file_system_private_api.h"] 7 8 /** 9 * This file contains the <code>PPB_IsolatedFileSystem_Private</code> interface. 10 */ 11 label Chrome { 12 M33 = 0.2 13 }; 14 15 16 /** 17 * The <code>PP_IsolatedFileSystemType_Private</code> values indicate the type 18 * of isolated file systems. 19 */ 20 [assert_size(4)] 21 enum PP_IsolatedFileSystemType_Private { 22 /** Type for invalid file systems */ 23 PP_ISOLATEDFILESYSTEMTYPE_PRIVATE_INVALID = 0, 24 /** Type for CRX file systems */ 25 PP_ISOLATEDFILESYSTEMTYPE_PRIVATE_CRX = 1, 26 /** Type for PluginPrivate file systems */ 27 PP_ISOLATEDFILESYSTEMTYPE_PRIVATE_PLUGINPRIVATE = 2 28 }; 29 30 /* <code>PPB_IsolatedFileSystem_Private</code> interface */ 31 interface PPB_IsolatedFileSystem_Private { 32 /** 33 * Open() opens a file system corresponding the given file system type. 34 * 35 * When opening the CRX file system, this should be called from an extension 36 * context, otherwise it will fail. 37 * 38 * @param[in] instance A <code>PP_Instance</code> identifying the instance 39 * with the file system. 40 * @param[in] type A file system type as defined by 41 * <code>PP_IsolatedFileSystemType_Private</code> enum. 42 * @param[out] file_system An output <code>PP_Resource</code> corresponding 43 * to a PPB_FileSystem. 44 * @param[in] callback A <code>PP_CompletionCallback</code> to be called upon 45 * completion of Open. 46 * 47 * @return An int32_t containing an error code from <code>pp_errors.h</code>. 48 */ 49 [singleton,api=PPB_IsolatedFileSystem_Private_API] 50 int32_t Open([in] PP_Instance instance, 51 [in] PP_IsolatedFileSystemType_Private type, 52 [out] PP_Resource file_system, 53 [in] PP_CompletionCallback callback); 54 }; 55