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 12 namespace pp { 13 14 class FileRef; 15 16 namespace flash { 17 18 class 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