tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

WMFClearKeyContentEnabler.h (1538B)


      1 /* This Source Code Form is subject to the terms of the Mozilla Public
      2 * License, v. 2.0. If a copy of the MPL was not distributed with this
      3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
      4 
      5 #ifndef DOM_MEDIA_PLATFORM_WMF_CLEARKEY_WMFCLEARKEYCONTENTENABLER_H
      6 #define DOM_MEDIA_PLATFORM_WMF_CLEARKEY_WMFCLEARKEYCONTENTENABLER_H
      7 
      8 #include <wrl.h>
      9 #include <wrl/client.h>
     10 
     11 #include "MFCDMExtra.h"
     12 
     13 namespace mozilla {
     14 
     15 // This class is used to return correct enable type.
     16 class WMFClearKeyContentEnabler
     17    : public Microsoft::WRL::RuntimeClass<
     18          Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::ClassicCom>,
     19          IMFContentEnabler, Microsoft::WRL::FtmBase> {
     20 public:
     21  WMFClearKeyContentEnabler() = default;
     22  ~WMFClearKeyContentEnabler() = default;
     23  WMFClearKeyContentEnabler(const WMFClearKeyContentEnabler&) = delete;
     24  WMFClearKeyContentEnabler& operator=(const WMFClearKeyContentEnabler&) =
     25      delete;
     26 
     27  HRESULT RuntimeClassInitialize();
     28 
     29  // IMFContentEnabler
     30  STDMETHODIMP AutomaticEnable() override;
     31  STDMETHODIMP Cancel() override;
     32  STDMETHODIMP GetEnableData(BYTE** aData, DWORD* aDataSize) override;
     33  STDMETHODIMP GetEnableType(GUID* aType) override;
     34  STDMETHODIMP GetEnableURL(LPWSTR* aUrl, DWORD* aUrlSize,
     35                            MF_URL_TRUST_STATUS* aTrustStatus) override;
     36  STDMETHODIMP IsAutomaticSupported(BOOL* automatic) override;
     37  STDMETHODIMP MonitorEnable() override;
     38 };
     39 
     40 }  // namespace mozilla
     41 
     42 #endif  // DOM_MEDIA_PLATFORM_WMF_CLEARKEY_WMFCLEARKEYCONTENTENABLER_H