Pepper_47_C_interfaces
ppb_flash_drm.h
Go to the documentation of this file.
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 /* From private/ppb_flash_drm.idl modified Thu Oct 20 13:57:04 2016. */
7 
8 #ifndef PPAPI_C_PRIVATE_PPB_FLASH_DRM_H_
9 #define PPAPI_C_PRIVATE_PPB_FLASH_DRM_H_
10 
11 #include "ppapi/c/pp_bool.h"
13 #include "ppapi/c/pp_instance.h"
14 #include "ppapi/c/pp_macros.h"
15 #include "ppapi/c/pp_resource.h"
16 #include "ppapi/c/pp_stdint.h"
17 #include "ppapi/c/pp_var.h"
18 
19 #define PPB_FLASH_DRM_INTERFACE_1_0 "PPB_Flash_DRM;1.0"
20 #define PPB_FLASH_DRM_INTERFACE_1_1 "PPB_Flash_DRM;1.1"
21 #define PPB_FLASH_DRM_INTERFACE PPB_FLASH_DRM_INTERFACE_1_1
22 
23 /**
24  * @file
25  * This file contains the <code>PPB_Flash_DRM</code> interface.
26  */
27 
28 
29 /**
30  * @addtogroup Interfaces
31  * @{
32  */
33 /**
34  * A resource for performing Flash DRM-related operations.
35  */
37  /**
38  * Creates a PPB_Flash_DRM resource for performing DRM-related operations in
39  * Flash.
40  */
42  /**
43  * Asynchronously computes the device ID. When available, it will place the
44  * string in |*id| and will call the completion callback. On failure the
45  * given var will be PP_VARTYPE_UNDEFINED.
46  */
47  int32_t (*GetDeviceID)(PP_Resource drm,
48  struct PP_Var* id,
49  struct PP_CompletionCallback callback);
50  /**
51  * Windows and Mac only. Synchronously outputs the HMONITOR or
52  * CGDirectDisplayID corresponding to the monitor on which the plugin instance
53  * is displayed in |hmonitor|. This value is queried asynchronously and this
54  * will return PP_FALSE if the value is not yet available or an error
55  * occurred. PP_TRUE is returned on success.
56  */
57  PP_Bool (*GetHmonitor)(PP_Resource drm, int64_t* hmonitor);
58  /**
59  * Asynchronously returns a PPB_FileRef resource in |file_ref| which points to
60  * the Voucher file for performing DRM verification. |callback| will be called
61  * upon completion.
62  */
63  int32_t (*GetVoucherFile)(PP_Resource drm,
64  PP_Resource* file_ref,
65  struct PP_CompletionCallback callback);
66  /**
67  * Asynchronously returns a value indicating whether the monitor on which the
68  * plugin instance is displayed is external. |callback| will be called upon
69  * completion.
70  */
72  PP_Bool* is_external,
73  struct PP_CompletionCallback callback);
74 };
75 
77 
80  int32_t (*GetDeviceID)(PP_Resource drm,
81  struct PP_Var* id,
82  struct PP_CompletionCallback callback);
83  PP_Bool (*GetHmonitor)(PP_Resource drm, int64_t* hmonitor);
84  int32_t (*GetVoucherFile)(PP_Resource drm,
85  PP_Resource* file_ref,
86  struct PP_CompletionCallback callback);
87 };
88 /**
89  * @}
90  */
91 
92 #endif /* PPAPI_C_PRIVATE_PPB_FLASH_DRM_H_ */
93 
PP_Bool(* GetHmonitor)(PP_Resource drm, int64_t *hmonitor)
Definition: ppb_flash_drm.h:57
int32_t PP_Resource
Definition: pp_resource.h:40
PP_Resource(* Create)(PP_Instance instance)
Definition: ppb_flash_drm.h:41
int32_t(* MonitorIsExternal)(PP_Resource drm, PP_Bool *is_external, struct PP_CompletionCallback callback)
Definition: ppb_flash_drm.h:71
int32_t(* GetVoucherFile)(PP_Resource drm, PP_Resource *file_ref, struct PP_CompletionCallback callback)
Definition: ppb_flash_drm.h:63
Definition: pp_var.h:166
int32_t(* GetDeviceID)(PP_Resource drm, struct PP_Var *id, struct PP_CompletionCallback callback)
Definition: ppb_flash_drm.h:47
int32_t PP_Instance
Definition: pp_instance.h:34
PP_Resource(* Create)(PP_Instance instance)
Definition: ppb_flash_drm.h:79
PP_Bool(* GetHmonitor)(PP_Resource drm, int64_t *hmonitor)
Definition: ppb_flash_drm.h:83
int32_t(* GetVoucherFile)(PP_Resource drm, PP_Resource *file_ref, struct PP_CompletionCallback callback)
Definition: ppb_flash_drm.h:84
PP_Bool
Definition: pp_bool.h:30
int32_t(* GetDeviceID)(PP_Resource drm, struct PP_Var *id, struct PP_CompletionCallback callback)
Definition: ppb_flash_drm.h:80