blob: f0e0c6c0adda956fdae989054ffd58891b959a8d [file] [log] [blame]
Jon Hjelle891a4462016-01-21 11:42:05 -08001/*
2 * Copyright 2015 The WebRTC project authors. All Rights Reserved.
3 *
4 * 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.
9 */
10
11#import "RTCVideoRendererAdapter.h"
12
Henrik Kjellander15583c12016-02-10 10:53:12 +010013#include "webrtc/api/mediastreaminterface.h"
Jon Hjelle891a4462016-01-21 11:42:05 -080014
15#import "RTCVideoRenderer.h"
16
17NS_ASSUME_NONNULL_BEGIN
18
19@interface RTCVideoRendererAdapter ()
20
21/**
22 * The Objective-C video renderer passed to this adapter during construction.
23 * Calls made to the webrtc::VideoRenderInterface will be adapted and passed to
24 * this video renderer.
25 */
26@property(nonatomic, readonly) id<RTCVideoRenderer> videoRenderer;
27
28/**
Niels Möller8f597622016-03-23 10:33:07 +010029 * The native VideoSinkInterface surface exposed by this adapter. Calls made
Jon Hjelle891a4462016-01-21 11:42:05 -080030 * to this interface will be adapted and passed to the RTCVideoRenderer supplied
31 * during construction. This pointer is unsafe and owned by this class.
32 */
33@property(nonatomic, readonly)
Niels Möller8f597622016-03-23 10:33:07 +010034 rtc::VideoSinkInterface<cricket::VideoFrame> *nativeVideoRenderer;
Jon Hjelle891a4462016-01-21 11:42:05 -080035
36/** Initialize an RTCVideoRendererAdapter with an RTCVideoRenderer. */
37- (instancetype)initWithNativeRenderer:(id<RTCVideoRenderer>)videoRenderer
38 NS_DESIGNATED_INITIALIZER;
39
40@end
41
42NS_ASSUME_NONNULL_END