- add sources.
[platform/framework/web/crosswalk.git] / src / ppapi / api / private / ppb_flash_drm.idl
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