OLD | NEW |
| (Empty) |
1 // Copyright (c) 2011 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 #ifndef PPAPI_THUNK_PPB_FILE_IO_API_H_ | |
6 #define PPAPI_THUNK_PPB_FILE_IO_API_H_ | |
7 | |
8 #include "ppapi/c/dev/ppb_file_io_dev.h" | |
9 | |
10 namespace ppapi { | |
11 namespace thunk { | |
12 | |
13 class PPB_FileIO_API { | |
14 public: | |
15 virtual int32_t Open(PP_Resource file_ref, | |
16 int32_t open_flags, | |
17 PP_CompletionCallback callback) = 0; | |
18 virtual int32_t Query(PP_FileInfo_Dev* info, | |
19 PP_CompletionCallback callback) = 0; | |
20 virtual int32_t Touch(PP_Time last_access_time, | |
21 PP_Time last_modified_time, | |
22 PP_CompletionCallback callback) = 0; | |
23 virtual int32_t Read(int64_t offset, | |
24 char* buffer, | |
25 int32_t bytes_to_read, | |
26 PP_CompletionCallback callback) = 0; | |
27 virtual int32_t Write(int64_t offset, | |
28 const char* buffer, | |
29 int32_t bytes_to_write, | |
30 PP_CompletionCallback callback) = 0; | |
31 virtual int32_t SetLength(int64_t length, | |
32 PP_CompletionCallback callback) = 0; | |
33 virtual int32_t Flush(PP_CompletionCallback callback) = 0; | |
34 virtual void Close() = 0; | |
35 | |
36 // Trusted API. | |
37 virtual int32_t GetOSFileDescriptor() = 0; | |
38 virtual int32_t WillWrite(int64_t offset, | |
39 int32_t bytes_to_write, | |
40 PP_CompletionCallback callback) = 0; | |
41 virtual int32_t WillSetLength(int64_t length, | |
42 PP_CompletionCallback callback) = 0; | |
43 }; | |
44 | |
45 } // namespace thunk | |
46 } // namespace ppapi | |
47 | |
48 #endif // PPAPI_THUNK_PPB_FILE_IO_API_H_ | |
OLD | NEW |