// media/mojo/mojom/frame_interface_factory.mojom-test-utils.h is auto generated by mojom_bindings_generator.py, do not edit

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef MEDIA_MOJO_MOJOM_FRAME_INTERFACE_FACTORY_MOJOM_TEST_UTILS_H_
#define MEDIA_MOJO_MOJOM_FRAME_INTERFACE_FACTORY_MOJOM_TEST_UTILS_H_

#include "media/mojo/mojom/frame_interface_factory.mojom.h"


namespace media::mojom {


class  FrameInterfaceFactoryInterceptorForTesting : public FrameInterfaceFactory {
  virtual FrameInterfaceFactory* GetForwardingInterface() = 0;
  void CreateProvisionFetcher(::mojo::PendingReceiver<::media::mojom::ProvisionFetcher> provision_fetcher) override;
  void CreateCdmStorage(::mojo::PendingReceiver<::media::mojom::CdmStorage> cdm_storage) override;
  void GetCdmOrigin(GetCdmOriginCallback callback) override;
  void BindEmbedderReceiver(::mojo::GenericPendingReceiver receiver) override;
};
class  FrameInterfaceFactoryAsyncWaiter {
 public:
  explicit FrameInterfaceFactoryAsyncWaiter(FrameInterfaceFactory* proxy);

  FrameInterfaceFactoryAsyncWaiter(const FrameInterfaceFactoryAsyncWaiter&) = delete;
  FrameInterfaceFactoryAsyncWaiter& operator=(const FrameInterfaceFactoryAsyncWaiter&) = delete;

  ~FrameInterfaceFactoryAsyncWaiter();
  void GetCdmOrigin(
      ::url::Origin* out_cdm_origin);
  ::url::Origin GetCdmOrigin();

 private:
  FrameInterfaceFactory* const proxy_;
};




}  // media::mojom

#endif  // MEDIA_MOJO_MOJOM_FRAME_INTERFACE_FACTORY_MOJOM_TEST_UTILS_H_