OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // From ppb_file_mapping.idl modified Mon Jan 27 11:00:43 2014. | 5 // From ppb_file_mapping.idl modified Mon Apr 7 08:55:47 2014. |
6 | 6 |
7 #include "ppapi/c/pp_completion_callback.h" | 7 #include "ppapi/c/pp_completion_callback.h" |
8 #include "ppapi/c/pp_errors.h" | 8 #include "ppapi/c/pp_errors.h" |
9 #include "ppapi/c/ppb_file_mapping.h" | 9 #include "ppapi/c/ppb_file_mapping.h" |
10 #include "ppapi/shared_impl/tracked_callback.h" | 10 #include "ppapi/shared_impl/tracked_callback.h" |
11 #include "ppapi/thunk/enter.h" | 11 #include "ppapi/thunk/enter.h" |
12 #include "ppapi/thunk/ppapi_thunk_export.h" | 12 #include "ppapi/thunk/ppapi_thunk_export.h" |
13 #include "ppapi/thunk/ppb_file_mapping_api.h" | 13 #include "ppapi/thunk/ppb_file_mapping_api.h" |
14 | 14 |
15 namespace ppapi { | 15 namespace ppapi { |
16 namespace thunk { | 16 namespace thunk { |
17 | 17 |
18 namespace { | 18 namespace { |
19 | 19 |
20 int32_t Map(PP_Instance instance, | 20 int32_t Map(PP_Instance instance, |
21 PP_Resource file_io, | 21 PP_Resource file_io, |
22 int64_t length, | 22 int64_t length, |
23 uint32_t map_protection, | 23 uint32_t map_protection, |
24 uint32_t map_flags, | 24 uint32_t map_flags, |
25 int64_t offset, | 25 int64_t offset, |
26 void** address, | 26 void** address, |
27 struct PP_CompletionCallback callback) { | 27 struct PP_CompletionCallback callback) { |
28 VLOG(4) << "PPB_FileMapping::Map()"; | 28 VLOG(4) << "PPB_FileMapping::Map()"; |
29 EnterInstanceAPI<PPB_FileMapping_API> enter(instance, callback); | 29 EnterInstanceAPI<PPB_FileMapping_API> enter(instance, callback); |
30 if (enter.failed()) | 30 if (enter.failed()) |
31 return enter.retval(); | 31 return enter.retval(); |
32 return enter.SetResult(enter.functions()->Map(instance, | 32 return enter.SetResult( |
33 file_io, | 33 enter.functions()->Map(instance, file_io, length, map_protection, |
34 length, | 34 map_flags, offset, address, enter.callback())); |
35 map_protection, | |
36 map_flags, | |
37 offset, | |
38 address, | |
39 enter.callback())); | |
40 } | 35 } |
41 | 36 |
42 int32_t Unmap(PP_Instance instance, | 37 int32_t Unmap(PP_Instance instance, |
43 const void* address, | 38 const void* address, |
44 int64_t length, | 39 int64_t length, |
45 struct PP_CompletionCallback callback) { | 40 struct PP_CompletionCallback callback) { |
46 VLOG(4) << "PPB_FileMapping::Unmap()"; | 41 VLOG(4) << "PPB_FileMapping::Unmap()"; |
47 EnterInstanceAPI<PPB_FileMapping_API> enter(instance, callback); | 42 EnterInstanceAPI<PPB_FileMapping_API> enter(instance, callback); |
48 if (enter.failed()) | 43 if (enter.failed()) |
49 return enter.retval(); | 44 return enter.retval(); |
50 return enter.SetResult(enter.functions()->Unmap(instance, | 45 return enter.SetResult( |
51 address, | 46 enter.functions()->Unmap(instance, address, length, enter.callback())); |
52 length, | |
53 enter.callback())); | |
54 } | 47 } |
55 | 48 |
56 int64_t GetMapPageSize(PP_Instance instance) { | 49 int64_t GetMapPageSize(PP_Instance instance) { |
57 VLOG(4) << "PPB_FileMapping::GetMapPageSize()"; | 50 VLOG(4) << "PPB_FileMapping::GetMapPageSize()"; |
58 EnterInstanceAPI<PPB_FileMapping_API> enter(instance); | 51 EnterInstanceAPI<PPB_FileMapping_API> enter(instance); |
59 if (enter.failed()) | 52 if (enter.failed()) |
60 return 0; | 53 return 0; |
61 return enter.functions()->GetMapPageSize(instance); | 54 return enter.functions()->GetMapPageSize(instance); |
62 } | 55 } |
63 | 56 |
64 const PPB_FileMapping_0_1 g_ppb_filemapping_thunk_0_1 = { | 57 const PPB_FileMapping_0_1 g_ppb_filemapping_thunk_0_1 = {&Map, |
65 &Map, | 58 &Unmap, |
66 &Unmap, | 59 &GetMapPageSize}; |
67 &GetMapPageSize | |
68 }; | |
69 | 60 |
70 } // namespace | 61 } // namespace |
71 | 62 |
72 PPAPI_THUNK_EXPORT const PPB_FileMapping_0_1* GetPPB_FileMapping_0_1_Thunk() { | 63 PPAPI_THUNK_EXPORT const PPB_FileMapping_0_1* GetPPB_FileMapping_0_1_Thunk() { |
73 return &g_ppb_filemapping_thunk_0_1; | 64 return &g_ppb_filemapping_thunk_0_1; |
74 } | 65 } |
75 | 66 |
76 } // namespace thunk | 67 } // namespace thunk |
77 } // namespace ppapi | 68 } // namespace ppapi |
OLD | NEW |