Index: webrtc/sdk/objc/Framework/Classes/RTCRtpSender.mm |
diff --git a/webrtc/sdk/objc/Framework/Classes/RTCRtpSender.mm b/webrtc/sdk/objc/Framework/Classes/RTCRtpSender.mm |
index 71030029adf4005792f535e89d679fe20c591c06..f2b3d803a8dac1942d24638977f4e8004d5d9269 100644 |
--- a/webrtc/sdk/objc/Framework/Classes/RTCRtpSender.mm |
+++ b/webrtc/sdk/objc/Framework/Classes/RTCRtpSender.mm |
@@ -19,14 +19,6 @@ |
rtc::scoped_refptr<webrtc::RtpSenderInterface> _nativeRtpSender; |
} |
-- (instancetype)initWithNativeRtpSender: |
- (rtc::scoped_refptr<webrtc::RtpSenderInterface>)nativeRtpSender { |
- if (self = [super init]) { |
- _nativeRtpSender = nativeRtpSender; |
- } |
- return self; |
-} |
- |
- (RTCRtpParameters *)parameters { |
return [[RTCRtpParameters alloc] |
initWithNativeParameters:_nativeRtpSender->GetParameters()]; |
@@ -45,4 +37,39 @@ |
return nil; |
} |
+- (BOOL)isEqual:(id)object { |
+ if (self == object) { |
+ return YES; |
+ } |
+ if (![object isMemberOfClass:[self class]]) { |
+ return NO; |
+ } |
+ return [self isEqualToSender:(RTCRtpSender *)object]; |
+} |
+ |
+- (NSUInteger)hash { |
+ return (NSUInteger)_nativeRtpSender.get(); |
+} |
+ |
+#pragma mark - Private |
+ |
+- (rtc::scoped_refptr<webrtc::RtpSenderInterface>)nativeRtpSender { |
+ return _nativeRtpSender; |
+} |
+ |
+- (instancetype)initWithNativeRtpSender: |
+ (rtc::scoped_refptr<webrtc::RtpSenderInterface>)nativeRtpSender { |
+ if (self = [super init]) { |
+ _nativeRtpSender = nativeRtpSender; |
+ } |
+ return self; |
+} |
+ |
+- (BOOL)isEqualToSender:(RTCRtpSender *)sender { |
+ if (!sender) { |
+ return NO; |
+ } |
+ return _nativeRtpSender == sender.nativeRtpSender; |
+} |
+ |
@end |