blob: 219e95bb0d803ad3ff31320cd363b1ab6a9d0f8d [file] [log] [blame]
jlmiller@webrtc.org5f93d0a2015-01-20 21:36:13 +00001/*
kjellander1afca732016-02-07 20:46:45 -08002 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
jlmiller@webrtc.org5f93d0a2015-01-20 21:36:13 +00003 *
kjellander1afca732016-02-07 20:46:45 -08004 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
jlmiller@webrtc.org5f93d0a2015-01-20 21:36:13 +00009 */
buildbot@webrtc.org65b98d12014-08-07 22:09:08 +000010
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020011#ifndef MEDIA_BASE_VIDEOCAPTURERFACTORY_H_
12#define MEDIA_BASE_VIDEOCAPTURERFACTORY_H_
buildbot@webrtc.org65b98d12014-08-07 22:09:08 +000013
deadbeef112b2e92017-02-10 20:13:37 -080014#include <memory>
15
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020016#include "media/base/device.h"
buildbot@webrtc.org65b98d12014-08-07 22:09:08 +000017
18namespace cricket {
19
20class VideoCapturer;
21
22class VideoDeviceCapturerFactory {
23 public:
24 VideoDeviceCapturerFactory() {}
25 virtual ~VideoDeviceCapturerFactory() {}
26
deadbeef112b2e92017-02-10 20:13:37 -080027 virtual std::unique_ptr<VideoCapturer> Create(const Device& device) = 0;
buildbot@webrtc.org65b98d12014-08-07 22:09:08 +000028};
29
buildbot@webrtc.org65b98d12014-08-07 22:09:08 +000030} // namespace cricket
31
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020032#endif // MEDIA_BASE_VIDEOCAPTURERFACTORY_H_