blob: 65d45fb88ecd9697c29bac93bc0817a85517d34c [file] [log] [blame]
Steve Anton8cb344a2018-02-27 15:34:53 -08001/*
2 * Copyright 2018 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
Anders Carlsson7bca8ca2018-08-30 09:30:29 +020011#import "RTCRtpTransceiver.h"
Steve Anton8cb344a2018-02-27 15:34:53 -080012
Steve Anton10542f22019-01-11 09:11:00 -080013#include "api/rtp_transceiver_interface.h"
Steve Anton8cb344a2018-02-27 15:34:53 -080014
15NS_ASSUME_NONNULL_BEGIN
16
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020017@class RTC_OBJC_TYPE(RTCPeerConnectionFactory);
Yura Yaroshevich08f14dd2018-07-09 11:56:06 +030018
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020019@interface RTC_OBJC_TYPE (RTCRtpTransceiverInit)
20()
Steve Anton8cb344a2018-02-27 15:34:53 -080021
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020022 @property(nonatomic, readonly) webrtc::RtpTransceiverInit nativeInit;
Steve Anton8cb344a2018-02-27 15:34:53 -080023
24@end
25
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020026@interface RTC_OBJC_TYPE (RTCRtpTransceiver)
27()
Steve Anton8cb344a2018-02-27 15:34:53 -080028
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020029 @property(nonatomic,
30 readonly) rtc::scoped_refptr<webrtc::RtpTransceiverInterface> nativeRtpTransceiver;
Steve Anton8cb344a2018-02-27 15:34:53 -080031
32/** Initialize an RTCRtpTransceiver with a native RtpTransceiverInterface. */
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020033- (instancetype)initWithFactory:(RTC_OBJC_TYPE(RTCPeerConnectionFactory) *)factory
Yura Yaroshevich08f14dd2018-07-09 11:56:06 +030034 nativeRtpTransceiver:
35 (rtc::scoped_refptr<webrtc::RtpTransceiverInterface>)nativeRtpTransceiver
Steve Anton8cb344a2018-02-27 15:34:53 -080036 NS_DESIGNATED_INITIALIZER;
37
38+ (webrtc::RtpTransceiverDirection)nativeRtpTransceiverDirectionFromDirection:
39 (RTCRtpTransceiverDirection)direction;
40
41+ (RTCRtpTransceiverDirection)rtpTransceiverDirectionFromNativeDirection:
42 (webrtc::RtpTransceiverDirection)nativeDirection;
43
44@end
45
46NS_ASSUME_NONNULL_END