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#ifndef PPAPI_CPP_PRIVATE_FLASH_DRM_H_ 6#define PPAPI_CPP_PRIVATE_FLASH_DRM_H_ 7 8#include "ppapi/cpp/completion_callback.h" 9#include "ppapi/cpp/file_ref.h" 10#include "ppapi/cpp/resource.h" 11 12namespace pp { 13 14class FileRef; 15 16namespace flash { 17 18class DRM : public Resource { 19 public: 20 DRM(); 21 explicit DRM(const InstanceHandle& instance); 22 23 // On success, returns a string var. 24 int32_t GetDeviceID(const CompletionCallbackWithOutput<Var>& callback); 25 // Outputs the HMONITOR associated with the current plugin instance in 26 // |hmonitor|. True is returned upon success. 27 bool GetHmonitor(int64_t* hmonitor); 28 // Returns the voucher file as a FileRef or an invalid resource on failure. 29 int32_t GetVoucherFile(const CompletionCallbackWithOutput<FileRef>& callback); 30 // On success, returns a value indicating if the monitor associated with the 31 // current plugin instance is external. 32 int32_t MonitorIsExternal( 33 const CompletionCallbackWithOutput<PP_Bool>& callback); 34}; 35 36} // namespace flash 37} // namespace pp 38 39#endif // PPAPI_CPP_PRIVATE_FLASH_DRM_H_ 40