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 3 * found in the LICENSE file. 4 */ 5 6 /** 7 * This file contains the <code>PPB_Flash_DRM</code> interface. 8 */ 9 10 [generate_thunk] 11 12 label Chrome { 13 M29 = 1.0 14 }; 15 16 /** 17 * A resource for performing Flash DRM-related operations. 18 */ 19 interface PPB_Flash_DRM { 20 /** 21 * Creates a PPB_Flash_DRM resource for performing DRM-related operations in 22 * Flash. 23 */ 24 PP_Resource Create([in] PP_Instance instance); 25 26 /** 27 * Asynchronously computes the device ID. When available, it will place the 28 * string in |*id| and will call the completion callback. On failure the 29 * given var will be PP_VARTYPE_UNDEFINED. 30 */ 31 int32_t GetDeviceID([in] PP_Resource drm, 32 [out] PP_Var id, 33 [in] PP_CompletionCallback callback); 34 35 /** 36 * Windows only. Synchronously outputs the HMONITOR corresponding to the 37 * monitor on which the plugin instance is displayed in |hmonitor|. PP_TRUE is 38 * returned on success. 39 */ 40 PP_Bool GetHmonitor([in] PP_Resource drm, 41 [out] int64_t hmonitor); 42 43 /** 44 * Asynchronously returns a PPB_FileRef resource in |file_ref| which points to 45 * the Voucher file for performing DRM verification. |callback| will be called 46 * upon completion. 47 */ 48 int32_t GetVoucherFile([in] PP_Resource drm, 49 [out] PP_Resource file_ref, 50 [in] PP_CompletionCallback callback); 51 }; 52 53