| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef PPAPI_THUNK_RESOURCE_CREATION_API_H_ | 5 #ifndef PPAPI_THUNK_RESOURCE_CREATION_API_H_ |
| 6 #define PPAPI_THUNK_RESOURCE_CREATION_API_H_ | 6 #define PPAPI_THUNK_RESOURCE_CREATION_API_H_ |
| 7 | 7 |
| 8 #include "ppapi/c/dev/ppb_audio_input_dev.h" | 8 #include "ppapi/c/dev/ppb_audio_input_dev.h" |
| 9 #include "ppapi/c/dev/ppb_file_chooser_dev.h" | 9 #include "ppapi/c/dev/ppb_file_chooser_dev.h" |
| 10 #include "ppapi/c/dev/ppb_video_layer_dev.h" | 10 #include "ppapi/c/dev/ppb_video_layer_dev.h" |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 struct PP_Flash_Menu; | 26 struct PP_Flash_Menu; |
| 27 struct PP_BrowserFont_Trusted_Description; | 27 struct PP_BrowserFont_Trusted_Description; |
| 28 struct PP_Size; | 28 struct PP_Size; |
| 29 | 29 |
| 30 namespace ppapi { | 30 namespace ppapi { |
| 31 | 31 |
| 32 struct PPB_URLRequestInfo_Data; | 32 struct PPB_URLRequestInfo_Data; |
| 33 | 33 |
| 34 namespace thunk { | 34 namespace thunk { |
| 35 | 35 |
| 36 class PPB_Graphics3D_API; |
| 37 |
| 36 // A functional API for creating resource types. Separating out the creation | 38 // A functional API for creating resource types. Separating out the creation |
| 37 // functions here allows us to implement most resources as a pure "resource | 39 // functions here allows us to implement most resources as a pure "resource |
| 38 // API", meaning all calls are routed on a per-resource-object basis. The | 40 // API", meaning all calls are routed on a per-resource-object basis. The |
| 39 // creation functions are not per-object (since there's no object during | 41 // creation functions are not per-object (since there's no object during |
| 40 // creation) so need functional routing based on the instance ID. | 42 // creation) so need functional routing based on the instance ID. |
| 41 class ResourceCreationAPI { | 43 class ResourceCreationAPI { |
| 42 public: | 44 public: |
| 43 virtual ~ResourceCreationAPI() {} | 45 virtual ~ResourceCreationAPI() {} |
| 44 | 46 |
| 45 virtual PP_Resource CreateFileIO(PP_Instance instance) = 0; | 47 virtual PP_Resource CreateFileIO(PP_Instance instance) = 0; |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 103 PP_Instance instance, | 105 PP_Instance instance, |
| 104 PP_FileChooserMode_Dev mode, | 106 PP_FileChooserMode_Dev mode, |
| 105 const char* accept_mime_types) = 0; | 107 const char* accept_mime_types) = 0; |
| 106 virtual PP_Resource CreateFlashMenu(PP_Instance instance, | 108 virtual PP_Resource CreateFlashMenu(PP_Instance instance, |
| 107 const PP_Flash_Menu* menu_data) = 0; | 109 const PP_Flash_Menu* menu_data) = 0; |
| 108 virtual PP_Resource CreateFlashMessageLoop(PP_Instance instance) = 0; | 110 virtual PP_Resource CreateFlashMessageLoop(PP_Instance instance) = 0; |
| 109 virtual PP_Resource CreateGraphics2D(PP_Instance instance, | 111 virtual PP_Resource CreateGraphics2D(PP_Instance instance, |
| 110 const PP_Size& size, | 112 const PP_Size& size, |
| 111 PP_Bool is_always_opaque) = 0; | 113 PP_Bool is_always_opaque) = 0; |
| 112 virtual PP_Resource CreateGraphics3D(PP_Instance instance, | 114 virtual PP_Resource CreateGraphics3D(PP_Instance instance, |
| 113 PP_Resource share_context, | 115 PPB_Graphics3D_API* share_context, |
| 114 const int32_t* attrib_list) = 0; | 116 const int32_t* attrib_list) = 0; |
| 115 virtual PP_Resource CreateGraphics3DRaw(PP_Instance instance, | 117 virtual PP_Resource CreateGraphics3DRaw(PP_Instance instance, |
| 116 PP_Resource share_context, | 118 PPB_Graphics3D_API* share_context, |
| 117 const int32_t* attrib_list) = 0; | 119 const int32_t* attrib_list) = 0; |
| 118 virtual PP_Resource CreateHostResolverPrivate(PP_Instance instance) = 0; | 120 virtual PP_Resource CreateHostResolverPrivate(PP_Instance instance) = 0; |
| 119 virtual PP_Resource CreateImageData(PP_Instance instance, | 121 virtual PP_Resource CreateImageData(PP_Instance instance, |
| 120 PP_ImageDataFormat format, | 122 PP_ImageDataFormat format, |
| 121 const PP_Size& size, | 123 const PP_Size& size, |
| 122 PP_Bool init_to_zero) = 0; | 124 PP_Bool init_to_zero) = 0; |
| 123 virtual PP_Resource CreateNetworkMonitor( | 125 virtual PP_Resource CreateNetworkMonitor( |
| 124 PP_Instance instance, | 126 PP_Instance instance, |
| 125 PPB_NetworkMonitor_Callback callback, | 127 PPB_NetworkMonitor_Callback callback, |
| 126 void* user_data) = 0; | 128 void* user_data) = 0; |
| (...skipping 17 matching lines...) Expand all Loading... |
| 144 virtual PP_Resource CreateX509CertificatePrivate(PP_Instance instance) = 0; | 146 virtual PP_Resource CreateX509CertificatePrivate(PP_Instance instance) = 0; |
| 145 #endif // !defined(OS_NACL) | 147 #endif // !defined(OS_NACL) |
| 146 | 148 |
| 147 static const ApiID kApiID = API_ID_RESOURCE_CREATION; | 149 static const ApiID kApiID = API_ID_RESOURCE_CREATION; |
| 148 }; | 150 }; |
| 149 | 151 |
| 150 } // namespace thunk | 152 } // namespace thunk |
| 151 } // namespace ppapi | 153 } // namespace ppapi |
| 152 | 154 |
| 153 #endif // PPAPI_THUNK_RESOURCE_CREATION_API_H_ | 155 #endif // PPAPI_THUNK_RESOURCE_CREATION_API_H_ |
| OLD | NEW |