15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2011 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef PPAPI_SHARED_IMPL_FILE_TYPE_CONVERSION_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PPAPI_SHARED_IMPL_FILE_TYPE_CONVERSION_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "base/files/file.h" 9868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "ppapi/c/pp_file_info.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/c/pp_stdint.h" 11868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "ppapi/c/ppb_file_system.h" 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/shared_impl/ppapi_shared_export.h" 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace ppapi { 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)PPAPI_SHARED_EXPORT int FileErrorToPepperError(base::File::Error error_code); 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Converts a PP_FileOpenFlags_Dev flag combination into a corresponding 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// PlatformFileFlags flag combination. 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Returns |true| if okay. 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)PPAPI_SHARED_EXPORT bool PepperFileOpenFlagsToPlatformFileFlags( 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int32_t pp_open_flags, 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int* flags_out); 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 25a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)PPAPI_SHARED_EXPORT void FileInfoToPepperFileInfo(const base::File::Info& info, 26a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) PP_FileSystemType fs_type, 27a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) PP_FileInfo* info_out); 28868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles) 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace ppapi 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // PPAPI_SHARED_IMPL_FILE_TYPE_CONVERSION_H_ 32