OLD | NEW |
| (Empty) |
1 /* Copyright (c) 2010 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_C_DEV_PPB_AUDIO_TRUSTED_DEV_H_ | |
6 #define PPAPI_C_DEV_PPB_AUDIO_TRUSTED_DEV_H_ | |
7 | |
8 #include "ppapi/c/pp_completion_callback.h" | |
9 #include "ppapi/c/pp_instance.h" | |
10 #include "ppapi/c/pp_resource.h" | |
11 | |
12 #define PPB_AUDIO_TRUSTED_DEV_INTERFACE "PPB_AudioTrusted(Dev);0.3" | |
13 | |
14 /** | |
15 * This interface is to be used by proxy implementations. All | |
16 * functions should be called from the main thread only. The | |
17 * resource returned is an Audio resource; most of the PPB_Audio_Dev | |
18 * interface is also usable on this resource. | |
19 */ | |
20 struct PPB_AudioTrusted_Dev { | |
21 /** Returns an audio resource. */ | |
22 PP_Resource (*CreateTrusted)(PP_Instance instance); | |
23 | |
24 /** | |
25 * Opens a paused audio interface, used by trusted side of proxy. | |
26 * Returns PP_ERROR_WOULD_BLOCK on success, and invokes | |
27 * the |create_callback| asynchronously to complete. | |
28 * As this function should always be invoked from the main thread, | |
29 * do not use the blocking variant of PP_CompletionCallback. | |
30 */ | |
31 int32_t (*Open)(PP_Resource audio, PP_Resource config, | |
32 struct PP_CompletionCallback create_callback); | |
33 | |
34 /** | |
35 * Get the sync socket. Use once Open has completed. | |
36 * Returns PP_OK on success. | |
37 */ | |
38 int32_t (*GetSyncSocket)(PP_Resource audio, int* sync_socket); | |
39 | |
40 /** | |
41 * Get the shared memory interface. Use once Open has completed. | |
42 * Returns PP_OK on success. | |
43 */ | |
44 int32_t (*GetSharedMemory)(PP_Resource audio, | |
45 int* shm_handle, | |
46 uint32_t* shm_size); | |
47 }; | |
48 | |
49 #endif /* PPAPI_C_DEV_PPB_AUDIO_TRUSTED_DEV_H_ */ | |
50 | |
OLD | NEW |