| 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 // From private/ppb_content_decryptor_private.idl, | 5 // From private/ppb_content_decryptor_private.idl modified Wed Nov 5 14:29:15 |
| 6 // modified Mon Aug 25 13:52:39 2014. | 6 // 2014. |
| 7 | 7 |
| 8 #include "ppapi/c/pp_errors.h" | 8 #include "ppapi/c/pp_errors.h" |
| 9 #include "ppapi/c/private/ppb_content_decryptor_private.h" | 9 #include "ppapi/c/private/ppb_content_decryptor_private.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 | 13 |
| 14 namespace ppapi { | 14 namespace ppapi { |
| 15 namespace thunk { | 15 namespace thunk { |
| 16 | 16 |
| 17 namespace { | 17 namespace { |
| 18 | 18 |
| 19 void PromiseResolved(PP_Instance instance, uint32_t promise_id) { | 19 void PromiseResolved(PP_Instance instance, uint32_t promise_id) { |
| 20 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseResolved()"; | 20 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseResolved()"; |
| 21 EnterInstance enter(instance); | 21 EnterInstance enter(instance); |
| 22 if (enter.failed()) | 22 if (enter.failed()) |
| 23 return; | 23 return; |
| 24 enter.functions()->PromiseResolved(instance, promise_id); | 24 enter.functions()->PromiseResolved(instance, promise_id); |
| 25 } | 25 } |
| 26 | 26 |
| 27 void PromiseResolvedWithSession(PP_Instance instance, | 27 void PromiseResolvedWithSession(PP_Instance instance, |
| 28 uint32_t promise_id, | 28 uint32_t promise_id, |
| 29 struct PP_Var web_session_id) { | 29 struct PP_Var web_session_id) { |
| 30 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseResolvedWithSession()"; | 30 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseResolvedWithSession()"; |
| 31 EnterInstance enter(instance); | 31 EnterInstance enter(instance); |
| 32 if (enter.failed()) | 32 if (enter.failed()) |
| 33 return; | 33 return; |
| 34 enter.functions()->PromiseResolvedWithSession(instance, | 34 enter.functions()->PromiseResolvedWithSession(instance, promise_id, |
| 35 promise_id, | |
| 36 web_session_id); | 35 web_session_id); |
| 37 } | 36 } |
| 38 | 37 |
| 39 void PromiseResolvedWithKeyIds(PP_Instance instance, | 38 void PromiseResolvedWithKeyIds(PP_Instance instance, |
| 40 uint32_t promise_id, | 39 uint32_t promise_id, |
| 41 struct PP_Var key_ids_array) { | 40 struct PP_Var key_ids_array) { |
| 42 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseResolvedWithKeyIds()"; | 41 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseResolvedWithKeyIds()"; |
| 43 EnterInstance enter(instance); | 42 EnterInstance enter(instance); |
| 44 if (enter.failed()) | 43 if (enter.failed()) |
| 45 return; | 44 return; |
| 46 enter.functions()->PromiseResolvedWithKeyIds(instance, | 45 enter.functions()->PromiseResolvedWithKeyIds(instance, promise_id, |
| 47 promise_id, | |
| 48 key_ids_array); | 46 key_ids_array); |
| 49 } | 47 } |
| 50 | 48 |
| 51 void PromiseRejected(PP_Instance instance, | 49 void PromiseRejected(PP_Instance instance, |
| 52 uint32_t promise_id, | 50 uint32_t promise_id, |
| 53 PP_CdmExceptionCode exception_code, | 51 PP_CdmExceptionCode exception_code, |
| 54 uint32_t system_code, | 52 uint32_t system_code, |
| 55 struct PP_Var error_description) { | 53 struct PP_Var error_description) { |
| 56 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseRejected()"; | 54 VLOG(4) << "PPB_ContentDecryptor_Private::PromiseRejected()"; |
| 57 EnterInstance enter(instance); | 55 EnterInstance enter(instance); |
| 58 if (enter.failed()) | 56 if (enter.failed()) |
| 59 return; | 57 return; |
| 60 enter.functions()->PromiseRejected(instance, | 58 enter.functions()->PromiseRejected(instance, promise_id, exception_code, |
| 61 promise_id, | 59 system_code, error_description); |
| 62 exception_code, | |
| 63 system_code, | |
| 64 error_description); | |
| 65 } | 60 } |
| 66 | 61 |
| 67 void SessionMessage(PP_Instance instance, | 62 void SessionMessage(PP_Instance instance, |
| 68 struct PP_Var web_session_id, | 63 struct PP_Var web_session_id, |
| 69 struct PP_Var message, | 64 struct PP_Var message, |
| 70 struct PP_Var destination_url) { | 65 struct PP_Var destination_url) { |
| 71 VLOG(4) << "PPB_ContentDecryptor_Private::SessionMessage()"; | 66 VLOG(4) << "PPB_ContentDecryptor_Private::SessionMessage()"; |
| 72 EnterInstance enter(instance); | 67 EnterInstance enter(instance); |
| 73 if (enter.failed()) | 68 if (enter.failed()) |
| 74 return; | 69 return; |
| 75 enter.functions()->SessionMessage(instance, | 70 enter.functions()->SessionMessage(instance, web_session_id, message, |
| 76 web_session_id, | |
| 77 message, | |
| 78 destination_url); | 71 destination_url); |
| 79 } | 72 } |
| 80 | 73 |
| 81 void SessionKeysChange(PP_Instance instance, | 74 void SessionKeysChange(PP_Instance instance, |
| 82 struct PP_Var web_session_id, | 75 struct PP_Var web_session_id, |
| 83 PP_Bool has_additional_usable_key) { | 76 PP_Bool has_additional_usable_key) { |
| 84 VLOG(4) << "PPB_ContentDecryptor_Private::SessionKeysChange()"; | 77 VLOG(4) << "PPB_ContentDecryptor_Private::SessionKeysChange()"; |
| 85 EnterInstance enter(instance); | 78 EnterInstance enter(instance); |
| 86 if (enter.failed()) | 79 if (enter.failed()) |
| 87 return; | 80 return; |
| 88 enter.functions()->SessionKeysChange(instance, | 81 enter.functions()->SessionKeysChange(instance, web_session_id, |
| 89 web_session_id, | |
| 90 has_additional_usable_key); | 82 has_additional_usable_key); |
| 91 } | 83 } |
| 92 | 84 |
| 93 void SessionExpirationChange(PP_Instance instance, | 85 void SessionExpirationChange(PP_Instance instance, |
| 94 struct PP_Var web_session_id, | 86 struct PP_Var web_session_id, |
| 95 PP_Time new_expiry_time) { | 87 PP_Time new_expiry_time) { |
| 96 VLOG(4) << "PPB_ContentDecryptor_Private::SessionExpirationChange()"; | 88 VLOG(4) << "PPB_ContentDecryptor_Private::SessionExpirationChange()"; |
| 97 EnterInstance enter(instance); | 89 EnterInstance enter(instance); |
| 98 if (enter.failed()) | 90 if (enter.failed()) |
| 99 return; | 91 return; |
| 100 enter.functions()->SessionExpirationChange(instance, | 92 enter.functions()->SessionExpirationChange(instance, web_session_id, |
| 101 web_session_id, | |
| 102 new_expiry_time); | 93 new_expiry_time); |
| 103 } | 94 } |
| 104 | 95 |
| 105 void SessionReady(PP_Instance instance, struct PP_Var web_session_id) { | 96 void SessionReady(PP_Instance instance, struct PP_Var web_session_id) { |
| 106 VLOG(4) << "PPB_ContentDecryptor_Private::SessionReady()"; | 97 VLOG(4) << "PPB_ContentDecryptor_Private::SessionReady()"; |
| 107 EnterInstance enter(instance); | 98 EnterInstance enter(instance); |
| 108 if (enter.failed()) | 99 if (enter.failed()) |
| 109 return; | 100 return; |
| 110 enter.functions()->SessionReady(instance, web_session_id); | 101 enter.functions()->SessionReady(instance, web_session_id); |
| 111 } | 102 } |
| 112 | 103 |
| 113 void SessionClosed(PP_Instance instance, struct PP_Var web_session_id) { | 104 void SessionClosed(PP_Instance instance, struct PP_Var web_session_id) { |
| 114 VLOG(4) << "PPB_ContentDecryptor_Private::SessionClosed()"; | 105 VLOG(4) << "PPB_ContentDecryptor_Private::SessionClosed()"; |
| 115 EnterInstance enter(instance); | 106 EnterInstance enter(instance); |
| 116 if (enter.failed()) | 107 if (enter.failed()) |
| 117 return; | 108 return; |
| 118 enter.functions()->SessionClosed(instance, web_session_id); | 109 enter.functions()->SessionClosed(instance, web_session_id); |
| 119 } | 110 } |
| 120 | 111 |
| 121 void SessionError(PP_Instance instance, | 112 void SessionError(PP_Instance instance, |
| 122 struct PP_Var web_session_id, | 113 struct PP_Var web_session_id, |
| 123 PP_CdmExceptionCode exception_code, | 114 PP_CdmExceptionCode exception_code, |
| 124 uint32_t system_code, | 115 uint32_t system_code, |
| 125 struct PP_Var error_description) { | 116 struct PP_Var error_description) { |
| 126 VLOG(4) << "PPB_ContentDecryptor_Private::SessionError()"; | 117 VLOG(4) << "PPB_ContentDecryptor_Private::SessionError()"; |
| 127 EnterInstance enter(instance); | 118 EnterInstance enter(instance); |
| 128 if (enter.failed()) | 119 if (enter.failed()) |
| 129 return; | 120 return; |
| 130 enter.functions()->SessionError(instance, | 121 enter.functions()->SessionError(instance, web_session_id, exception_code, |
| 131 web_session_id, | 122 system_code, error_description); |
| 132 exception_code, | |
| 133 system_code, | |
| 134 error_description); | |
| 135 } | 123 } |
| 136 | 124 |
| 137 void DeliverBlock(PP_Instance instance, | 125 void DeliverBlock(PP_Instance instance, |
| 138 PP_Resource decrypted_block, | 126 PP_Resource decrypted_block, |
| 139 const struct PP_DecryptedBlockInfo* decrypted_block_info) { | 127 const struct PP_DecryptedBlockInfo* decrypted_block_info) { |
| 140 VLOG(4) << "PPB_ContentDecryptor_Private::DeliverBlock()"; | 128 VLOG(4) << "PPB_ContentDecryptor_Private::DeliverBlock()"; |
| 141 EnterInstance enter(instance); | 129 EnterInstance enter(instance); |
| 142 if (enter.failed()) | 130 if (enter.failed()) |
| 143 return; | 131 return; |
| 144 enter.functions()->DeliverBlock(instance, | 132 enter.functions()->DeliverBlock(instance, decrypted_block, |
| 145 decrypted_block, | |
| 146 decrypted_block_info); | 133 decrypted_block_info); |
| 147 } | 134 } |
| 148 | 135 |
| 149 void DecoderInitializeDone(PP_Instance instance, | 136 void DecoderInitializeDone(PP_Instance instance, |
| 150 PP_DecryptorStreamType decoder_type, | 137 PP_DecryptorStreamType decoder_type, |
| 151 uint32_t request_id, | 138 uint32_t request_id, |
| 152 PP_Bool success) { | 139 PP_Bool success) { |
| 153 VLOG(4) << "PPB_ContentDecryptor_Private::DecoderInitializeDone()"; | 140 VLOG(4) << "PPB_ContentDecryptor_Private::DecoderInitializeDone()"; |
| 154 EnterInstance enter(instance); | 141 EnterInstance enter(instance); |
| 155 if (enter.failed()) | 142 if (enter.failed()) |
| 156 return; | 143 return; |
| 157 enter.functions()->DecoderInitializeDone(instance, | 144 enter.functions()->DecoderInitializeDone(instance, decoder_type, request_id, |
| 158 decoder_type, | |
| 159 request_id, | |
| 160 success); | 145 success); |
| 161 } | 146 } |
| 162 | 147 |
| 163 void DecoderDeinitializeDone(PP_Instance instance, | 148 void DecoderDeinitializeDone(PP_Instance instance, |
| 164 PP_DecryptorStreamType decoder_type, | 149 PP_DecryptorStreamType decoder_type, |
| 165 uint32_t request_id) { | 150 uint32_t request_id) { |
| 166 VLOG(4) << "PPB_ContentDecryptor_Private::DecoderDeinitializeDone()"; | 151 VLOG(4) << "PPB_ContentDecryptor_Private::DecoderDeinitializeDone()"; |
| 167 EnterInstance enter(instance); | 152 EnterInstance enter(instance); |
| 168 if (enter.failed()) | 153 if (enter.failed()) |
| 169 return; | 154 return; |
| 170 enter.functions()->DecoderDeinitializeDone(instance, | 155 enter.functions()->DecoderDeinitializeDone(instance, decoder_type, |
| 171 decoder_type, | |
| 172 request_id); | 156 request_id); |
| 173 } | 157 } |
| 174 | 158 |
| 175 void DecoderResetDone(PP_Instance instance, | 159 void DecoderResetDone(PP_Instance instance, |
| 176 PP_DecryptorStreamType decoder_type, | 160 PP_DecryptorStreamType decoder_type, |
| 177 uint32_t request_id) { | 161 uint32_t request_id) { |
| 178 VLOG(4) << "PPB_ContentDecryptor_Private::DecoderResetDone()"; | 162 VLOG(4) << "PPB_ContentDecryptor_Private::DecoderResetDone()"; |
| 179 EnterInstance enter(instance); | 163 EnterInstance enter(instance); |
| 180 if (enter.failed()) | 164 if (enter.failed()) |
| 181 return; | 165 return; |
| 182 enter.functions()->DecoderResetDone(instance, decoder_type, request_id); | 166 enter.functions()->DecoderResetDone(instance, decoder_type, request_id); |
| 183 } | 167 } |
| 184 | 168 |
| 185 void DeliverFrame(PP_Instance instance, | 169 void DeliverFrame(PP_Instance instance, |
| 186 PP_Resource decrypted_frame, | 170 PP_Resource decrypted_frame, |
| 187 const struct PP_DecryptedFrameInfo* decrypted_frame_info) { | 171 const struct PP_DecryptedFrameInfo* decrypted_frame_info) { |
| 188 VLOG(4) << "PPB_ContentDecryptor_Private::DeliverFrame()"; | 172 VLOG(4) << "PPB_ContentDecryptor_Private::DeliverFrame()"; |
| 189 EnterInstance enter(instance); | 173 EnterInstance enter(instance); |
| 190 if (enter.failed()) | 174 if (enter.failed()) |
| 191 return; | 175 return; |
| 192 enter.functions()->DeliverFrame(instance, | 176 enter.functions()->DeliverFrame(instance, decrypted_frame, |
| 193 decrypted_frame, | |
| 194 decrypted_frame_info); | 177 decrypted_frame_info); |
| 195 } | 178 } |
| 196 | 179 |
| 197 void DeliverSamples( | 180 void DeliverSamples( |
| 198 PP_Instance instance, | 181 PP_Instance instance, |
| 199 PP_Resource audio_frames, | 182 PP_Resource audio_frames, |
| 200 const struct PP_DecryptedSampleInfo* decrypted_sample_info) { | 183 const struct PP_DecryptedSampleInfo* decrypted_sample_info) { |
| 201 VLOG(4) << "PPB_ContentDecryptor_Private::DeliverSamples()"; | 184 VLOG(4) << "PPB_ContentDecryptor_Private::DeliverSamples()"; |
| 202 EnterInstance enter(instance); | 185 EnterInstance enter(instance); |
| 203 if (enter.failed()) | 186 if (enter.failed()) |
| 204 return; | 187 return; |
| 205 enter.functions()->DeliverSamples(instance, | 188 enter.functions()->DeliverSamples(instance, audio_frames, |
| 206 audio_frames, | |
| 207 decrypted_sample_info); | 189 decrypted_sample_info); |
| 208 } | 190 } |
| 209 | 191 |
| 210 const PPB_ContentDecryptor_Private_0_12 | 192 const PPB_ContentDecryptor_Private_0_12 |
| 211 g_ppb_contentdecryptor_private_thunk_0_12 = { | 193 g_ppb_contentdecryptor_private_thunk_0_12 = {&PromiseResolved, |
| 212 &PromiseResolved, | 194 &PromiseResolvedWithSession, |
| 213 &PromiseResolvedWithSession, | 195 &PromiseResolvedWithKeyIds, |
| 214 &PromiseResolvedWithKeyIds, | 196 &PromiseRejected, |
| 215 &PromiseRejected, | 197 &SessionMessage, |
| 216 &SessionMessage, | 198 &SessionKeysChange, |
| 217 &SessionKeysChange, | 199 &SessionExpirationChange, |
| 218 &SessionExpirationChange, | 200 &SessionReady, |
| 219 &SessionReady, | 201 &SessionClosed, |
| 220 &SessionClosed, | 202 &SessionError, |
| 221 &SessionError, | 203 &DeliverBlock, |
| 222 &DeliverBlock, | 204 &DecoderInitializeDone, |
| 223 &DecoderInitializeDone, | 205 &DecoderDeinitializeDone, |
| 224 &DecoderDeinitializeDone, | 206 &DecoderResetDone, |
| 225 &DecoderResetDone, | 207 &DeliverFrame, |
| 226 &DeliverFrame, | 208 &DeliverSamples}; |
| 227 &DeliverSamples | |
| 228 }; | |
| 229 | 209 |
| 230 } // namespace | 210 } // namespace |
| 231 | 211 |
| 232 PPAPI_THUNK_EXPORT const PPB_ContentDecryptor_Private_0_12* | 212 PPAPI_THUNK_EXPORT const PPB_ContentDecryptor_Private_0_12* |
| 233 GetPPB_ContentDecryptor_Private_0_12_Thunk() { | 213 GetPPB_ContentDecryptor_Private_0_12_Thunk() { |
| 234 return &g_ppb_contentdecryptor_private_thunk_0_12; | 214 return &g_ppb_contentdecryptor_private_thunk_0_12; |
| 235 } | 215 } |
| 236 | 216 |
| 237 } // namespace thunk | 217 } // namespace thunk |
| 238 } // namespace ppapi | 218 } // namespace ppapi |
| OLD | NEW |