tor-browser

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

WMFClearKeyTrustedInput.h (1390B)


      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_WMFCLEARKEYTRUSTEDINPUT_H
      6 #define DOM_MEDIA_PLATFORM_WMF_CLEARKEY_WMFCLEARKEYTRUSTEDINPUT_H
      7 
      8 #include <wrl.h>
      9 #include <wrl/client.h>
     10 
     11 #include "MFCDMExtra.h"
     12 #include "RefCounted.h"
     13 
     14 namespace mozilla {
     15 
     16 class SessionManagerWrapper;
     17 
     18 // This class is used to provide WMFClearKeyInputTrustAuthority.
     19 class WMFClearKeyTrustedInput final
     20    : public Microsoft::WRL::RuntimeClass<
     21          Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::WinRtClassicComMix>,
     22          IMFTrustedInput, Microsoft::WRL::FtmBase> {
     23 public:
     24  WMFClearKeyTrustedInput() = default;
     25  ~WMFClearKeyTrustedInput() = default;
     26  WMFClearKeyTrustedInput(const WMFClearKeyTrustedInput&) = delete;
     27  WMFClearKeyTrustedInput& operator=(const WMFClearKeyTrustedInput&) = delete;
     28 
     29  HRESULT RuntimeClassInitialize(SessionManagerWrapper* aSessionManager);
     30 
     31  // IMFTrustedInput
     32  STDMETHODIMP GetInputTrustAuthority(DWORD aStreamId, REFIID aRiid,
     33                                      IUnknown** aAuthority) override;
     34 
     35 private:
     36  RefPtr<SessionManagerWrapper> mSessionManager;
     37 };
     38 
     39 }  // namespace mozilla
     40 
     41 #endif  // DOM_MEDIA_PLATFORM_WMF_CLEARKEY_WMFCLEARKEYTRUSTEDINPUT_H