/* Copyright (c) 2012 The Chromium Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ /** * This file contains the PPB_Flash_DRM interface. */ [generate_thunk] label Chrome { M29 = 1.0, M33 = 1.1 }; /** * A resource for performing Flash DRM-related operations. */ interface PPB_Flash_DRM { /** * Creates a PPB_Flash_DRM resource for performing DRM-related operations in * Flash. */ PP_Resource Create([in] PP_Instance instance); /** * Asynchronously computes the device ID. When available, it will place the * string in |*id| and will call the completion callback. On failure the * given var will be PP_VARTYPE_UNDEFINED. */ int32_t GetDeviceID([in] PP_Resource drm, [out] PP_Var id, [in] PP_CompletionCallback callback); /** * Windows and Mac only. Synchronously outputs the HMONITOR or * CGDirectDisplayID corresponding to the monitor on which the plugin instance * is displayed in |hmonitor|. This value is queried asynchronously and this * will return PP_FALSE if the value is not yet available or an error * occurred. PP_TRUE is returned on success. */ PP_Bool GetHmonitor([in] PP_Resource drm, [out] int64_t hmonitor); /** * Asynchronously returns a PPB_FileRef resource in |file_ref| which points to * the Voucher file for performing DRM verification. |callback| will be called * upon completion. */ int32_t GetVoucherFile([in] PP_Resource drm, [out] PP_Resource file_ref, [in] PP_CompletionCallback callback); /** * Asynchronously returns a value indicating whether the monitor on which the * plugin instance is displayed is external. |callback| will be called upon * completion. */ [version=1.1] int32_t MonitorIsExternal([in] PP_Resource drm, [out] PP_Bool is_external, [in] PP_CompletionCallback callback); };