// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // MediaStreamProvider is used to capture media of the types defined in // MediaStreamType. There is only one MediaStreamProvider instance per media // type and a MediaStreamProvider instance can have only one registered // listener. // The MediaStreamManager is expected to be called on Browser::IO thread and // the listener will be called on the same thread. #ifndef CONTENT_BROWSER_RENDERER_HOST_MEDIA_MEDIA_STREAM_PROVIDER_H_ #define CONTENT_BROWSER_RENDERER_HOST_MEDIA_MEDIA_STREAM_PROVIDER_H_ #include "base/memory/ref_counted.h" #include "base/unguessable_token.h" #include "third_party/blink/public/common/mediastream/media_stream_request.h" namespace content { enum MediaStreamProviderError { … }; // Callback class used by MediaStreamProvider. class MediaStreamProviderListener { … }; // Implemented by a manager class providing captured media. class MediaStreamProvider : public base::RefCountedThreadSafe<MediaStreamProvider> { … }; } // namespace content #endif // CONTENT_BROWSER_RENDERER_HOST_MEDIA_MEDIA_STREAM_PROVIDER_H_