blob: aa087e557f3072f86de6124ee5338a20e022cc43 [file] [log] [blame]
Jon Hjelle67e83d62016-01-06 12:05:22 -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
Anders Carlsson7bca8ca2018-08-30 09:30:29 +020011#import "RTCSessionDescription.h"
Jon Hjelle67e83d62016-01-06 12:05:22 -080012
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020013#include "api/jsep.h"
Jon Hjelle67e83d62016-01-06 12:05:22 -080014
15NS_ASSUME_NONNULL_BEGIN
16
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020017@interface RTC_OBJC_TYPE (RTCSessionDescription)
18()
Jon Hjelle67e83d62016-01-06 12:05:22 -080019
Mirko Bonadeia81e9c82020-05-04 16:14:32 +020020 /**
21 * The native SessionDescriptionInterface representation of this
22 * RTCSessionDescription object. This is needed to pass to the underlying C++
23 * APIs.
24 */
Byoungchan Lee33728152021-08-04 20:54:45 +090025 @property(nonatomic,
26 readonly) std::unique_ptr<webrtc::SessionDescriptionInterface> nativeDescription;
Jon Hjelle67e83d62016-01-06 12:05:22 -080027
28/**
29 * Initialize an RTCSessionDescription from a native
30 * SessionDescriptionInterface. No ownership is taken of the native session
31 * description.
32 */
33- (instancetype)initWithNativeDescription:
Yves Gerey665174f2018-06-19 15:03:05 +020034 (const webrtc::SessionDescriptionInterface *)nativeDescription;
Jon Hjelle67e83d62016-01-06 12:05:22 -080035
hjona2f77982016-03-04 07:09:09 -080036+ (std::string)stdStringForType:(RTCSdpType)type;
Jon Hjelle67e83d62016-01-06 12:05:22 -080037
hjona2f77982016-03-04 07:09:09 -080038+ (RTCSdpType)typeForStdString:(const std::string &)string;
Jon Hjelle67e83d62016-01-06 12:05:22 -080039
40@end
41
42NS_ASSUME_NONNULL_END