├── .gitignore
├── KMSWebRTC.podspec
├── KMSWebRTC
├── KMSWebRTC.xcodeproj
│ ├── project.pbxproj
│ └── project.xcworkspace
│ │ └── contents.xcworkspacedata
├── KMSWebRTC.xcworkspace
│ └── contents.xcworkspacedata
├── KMSWebRTC
│ ├── Info.plist
│ ├── KMSWebRTC.h
│ ├── KMSWebRTCCall.h
│ ├── KMSWebRTCCall.m
│ ├── KMSWebRTCCallDataSource.h
│ ├── KMSWebRTCCallDelegate.h
│ └── KMSWebRTCCallInitiator.h
├── Podfile
├── Podfile.lock
├── Pods
│ ├── CGSizeAspectRatioTool
│ │ ├── CGSizeAspectRatioTool
│ │ │ ├── CGSizeAspectRatioTool.c
│ │ │ └── CGSizeAspectRatioTool.h
│ │ └── LICENSE
│ ├── KMSClient
│ │ ├── KMSClient
│ │ │ └── KMSClient
│ │ │ │ ├── KMSClient.h
│ │ │ │ ├── KMSMediaPipeline.h
│ │ │ │ ├── KMSMediaPipeline.m
│ │ │ │ ├── KMSRACSubject.h
│ │ │ │ ├── KMSRACSubject.m
│ │ │ │ ├── KMSSession.h
│ │ │ │ ├── KMSSession.m
│ │ │ │ ├── KMSWebRTCEndpoint.h
│ │ │ │ ├── KMSWebRTCEndpoint.m
│ │ │ │ ├── Log
│ │ │ │ ├── KMSLog.h
│ │ │ │ ├── KMSLog.m
│ │ │ │ └── KMSLogger.h
│ │ │ │ ├── MessageFactory
│ │ │ │ ├── KMSMessageFactoryMediaPipeline.h
│ │ │ │ ├── KMSMessageFactoryMediaPipeline.m
│ │ │ │ ├── KMSMessageFactoryWebRTCEndpoint.h
│ │ │ │ ├── KMSMessageFactoryWebRTCEndpoint.m
│ │ │ │ ├── KMSRequestMessageFactory.h
│ │ │ │ └── KMSRequestMessageFactory.m
│ │ │ │ ├── ModelLayer
│ │ │ │ ├── KMSConstructorParams.h
│ │ │ │ ├── KMSConstructorParams.m
│ │ │ │ ├── KMSElementConnection.h
│ │ │ │ ├── KMSElementConnection.m
│ │ │ │ ├── KMSEvent.h
│ │ │ │ ├── KMSEvent.m
│ │ │ │ ├── KMSEventData.h
│ │ │ │ ├── KMSEventData.m
│ │ │ │ ├── KMSICECandidate.h
│ │ │ │ ├── KMSICECandidate.m
│ │ │ │ ├── KMSMessage.h
│ │ │ │ ├── KMSMessage.m
│ │ │ │ ├── KMSMessageParams.h
│ │ │ │ ├── KMSMessageParams.m
│ │ │ │ ├── KMSOperationParams.h
│ │ │ │ ├── KMSOperationParams.m
│ │ │ │ ├── KMSRequestMessage.h
│ │ │ │ ├── KMSRequestMessage.m
│ │ │ │ ├── KMSResponseMessage.h
│ │ │ │ ├── KMSResponseMessage.m
│ │ │ │ ├── KMSResponseMessageResult.h
│ │ │ │ ├── KMSResponseMessageResult.m
│ │ │ │ └── Types
│ │ │ │ │ ├── KMSCreationType.h
│ │ │ │ │ ├── KMSEventType.h
│ │ │ │ │ ├── KMSInvocationOperation.h
│ │ │ │ │ ├── KMSMediaState.h
│ │ │ │ │ ├── KMSMediaType.h
│ │ │ │ │ └── KMSMethod.h
│ │ │ │ └── UUID
│ │ │ │ ├── UUID.h
│ │ │ │ └── UUID.m
│ │ ├── LICENSE
│ │ └── README.md
│ ├── MBProgressHUD
│ │ ├── LICENSE
│ │ ├── MBProgressHUD.h
│ │ ├── MBProgressHUD.m
│ │ └── README.mdown
│ ├── Manifest.lock
│ ├── Mantle
│ │ ├── LICENSE.md
│ │ ├── Mantle
│ │ │ ├── MTLJSONAdapter.h
│ │ │ ├── MTLJSONAdapter.m
│ │ │ ├── MTLModel+NSCoding.h
│ │ │ ├── MTLModel+NSCoding.m
│ │ │ ├── MTLModel.h
│ │ │ ├── MTLModel.m
│ │ │ ├── MTLReflection.h
│ │ │ ├── MTLReflection.m
│ │ │ ├── MTLTransformerErrorHandling.h
│ │ │ ├── MTLTransformerErrorHandling.m
│ │ │ ├── MTLValueTransformer.h
│ │ │ ├── MTLValueTransformer.m
│ │ │ ├── Mantle.h
│ │ │ ├── NSArray+MTLManipulationAdditions.h
│ │ │ ├── NSArray+MTLManipulationAdditions.m
│ │ │ ├── NSDictionary+MTLJSONKeyPath.h
│ │ │ ├── NSDictionary+MTLJSONKeyPath.m
│ │ │ ├── NSDictionary+MTLManipulationAdditions.h
│ │ │ ├── NSDictionary+MTLManipulationAdditions.m
│ │ │ ├── NSDictionary+MTLMappingAdditions.h
│ │ │ ├── NSDictionary+MTLMappingAdditions.m
│ │ │ ├── NSError+MTLModelException.h
│ │ │ ├── NSError+MTLModelException.m
│ │ │ ├── NSObject+MTLComparisonAdditions.h
│ │ │ ├── NSObject+MTLComparisonAdditions.m
│ │ │ ├── NSValueTransformer+MTLInversionAdditions.h
│ │ │ ├── NSValueTransformer+MTLInversionAdditions.m
│ │ │ ├── NSValueTransformer+MTLPredefinedTransformerAdditions.h
│ │ │ ├── NSValueTransformer+MTLPredefinedTransformerAdditions.m
│ │ │ └── extobjc
│ │ │ │ ├── EXTKeyPathCoding.h
│ │ │ │ ├── EXTRuntimeExtensions.h
│ │ │ │ ├── EXTRuntimeExtensions.m
│ │ │ │ ├── EXTScope.h
│ │ │ │ ├── EXTScope.m
│ │ │ │ └── metamacros.h
│ │ └── README.md
│ ├── MantleNullValuesOmit
│ │ ├── LICENSE
│ │ ├── MantleNullValuesOmit
│ │ │ └── MantleNullValuesOmit
│ │ │ │ ├── MTLJSONAdapter+NullValuesOmit.h
│ │ │ │ ├── MTLJSONAdapter+NullValuesOmit.m
│ │ │ │ ├── MTLModel+NullValuesOmit.h
│ │ │ │ ├── MTLModel+NullValuesOmit.m
│ │ │ │ └── MantleNullValuesOmit.h
│ │ └── README.md
│ ├── NSDictionaryMerge
│ │ ├── LICENSE
│ │ └── NSDictionaryMerge
│ │ │ ├── NSDictionary+Merge.h
│ │ │ └── NSDictionary+Merge.m
│ ├── Pods.xcodeproj
│ │ └── project.pbxproj
│ ├── ReactiveObjC
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ └── ReactiveObjC
│ │ │ ├── MKAnnotationView+RACSignalSupport.h
│ │ │ ├── MKAnnotationView+RACSignalSupport.m
│ │ │ ├── NSArray+RACSequenceAdditions.h
│ │ │ ├── NSArray+RACSequenceAdditions.m
│ │ │ ├── NSData+RACSupport.h
│ │ │ ├── NSData+RACSupport.m
│ │ │ ├── NSDictionary+RACSequenceAdditions.h
│ │ │ ├── NSDictionary+RACSequenceAdditions.m
│ │ │ ├── NSEnumerator+RACSequenceAdditions.h
│ │ │ ├── NSEnumerator+RACSequenceAdditions.m
│ │ │ ├── NSFileHandle+RACSupport.h
│ │ │ ├── NSFileHandle+RACSupport.m
│ │ │ ├── NSIndexSet+RACSequenceAdditions.h
│ │ │ ├── NSIndexSet+RACSequenceAdditions.m
│ │ │ ├── NSInvocation+RACTypeParsing.h
│ │ │ ├── NSInvocation+RACTypeParsing.m
│ │ │ ├── NSNotificationCenter+RACSupport.h
│ │ │ ├── NSNotificationCenter+RACSupport.m
│ │ │ ├── NSObject+RACDeallocating.h
│ │ │ ├── NSObject+RACDeallocating.m
│ │ │ ├── NSObject+RACDescription.h
│ │ │ ├── NSObject+RACDescription.m
│ │ │ ├── NSObject+RACKVOWrapper.h
│ │ │ ├── NSObject+RACKVOWrapper.m
│ │ │ ├── NSObject+RACLifting.h
│ │ │ ├── NSObject+RACLifting.m
│ │ │ ├── NSObject+RACPropertySubscribing.h
│ │ │ ├── NSObject+RACPropertySubscribing.m
│ │ │ ├── NSObject+RACSelectorSignal.h
│ │ │ ├── NSObject+RACSelectorSignal.m
│ │ │ ├── NSOrderedSet+RACSequenceAdditions.h
│ │ │ ├── NSOrderedSet+RACSequenceAdditions.m
│ │ │ ├── NSSet+RACSequenceAdditions.h
│ │ │ ├── NSSet+RACSequenceAdditions.m
│ │ │ ├── NSString+RACKeyPathUtilities.h
│ │ │ ├── NSString+RACKeyPathUtilities.m
│ │ │ ├── NSString+RACSequenceAdditions.h
│ │ │ ├── NSString+RACSequenceAdditions.m
│ │ │ ├── NSString+RACSupport.h
│ │ │ ├── NSString+RACSupport.m
│ │ │ ├── NSURLConnection+RACSupport.h
│ │ │ ├── NSURLConnection+RACSupport.m
│ │ │ ├── NSUserDefaults+RACSupport.h
│ │ │ ├── NSUserDefaults+RACSupport.m
│ │ │ ├── RACArraySequence.h
│ │ │ ├── RACArraySequence.m
│ │ │ ├── RACBehaviorSubject.h
│ │ │ ├── RACBehaviorSubject.m
│ │ │ ├── RACBlockTrampoline.h
│ │ │ ├── RACBlockTrampoline.m
│ │ │ ├── RACChannel.h
│ │ │ ├── RACChannel.m
│ │ │ ├── RACCommand.h
│ │ │ ├── RACCommand.m
│ │ │ ├── RACCompoundDisposable.h
│ │ │ ├── RACCompoundDisposable.m
│ │ │ ├── RACCompoundDisposableProvider.d
│ │ │ ├── RACDelegateProxy.h
│ │ │ ├── RACDelegateProxy.m
│ │ │ ├── RACDisposable.h
│ │ │ ├── RACDisposable.m
│ │ │ ├── RACDynamicSequence.h
│ │ │ ├── RACDynamicSequence.m
│ │ │ ├── RACDynamicSignal.h
│ │ │ ├── RACDynamicSignal.m
│ │ │ ├── RACEagerSequence.h
│ │ │ ├── RACEagerSequence.m
│ │ │ ├── RACEmptySequence.h
│ │ │ ├── RACEmptySequence.m
│ │ │ ├── RACEmptySignal.h
│ │ │ ├── RACEmptySignal.m
│ │ │ ├── RACErrorSignal.h
│ │ │ ├── RACErrorSignal.m
│ │ │ ├── RACEvent.h
│ │ │ ├── RACEvent.m
│ │ │ ├── RACGroupedSignal.h
│ │ │ ├── RACGroupedSignal.m
│ │ │ ├── RACImmediateScheduler.h
│ │ │ ├── RACImmediateScheduler.m
│ │ │ ├── RACIndexSetSequence.h
│ │ │ ├── RACIndexSetSequence.m
│ │ │ ├── RACKVOChannel.h
│ │ │ ├── RACKVOChannel.m
│ │ │ ├── RACKVOProxy.h
│ │ │ ├── RACKVOProxy.m
│ │ │ ├── RACKVOTrampoline.h
│ │ │ ├── RACKVOTrampoline.m
│ │ │ ├── RACMulticastConnection+Private.h
│ │ │ ├── RACMulticastConnection.h
│ │ │ ├── RACMulticastConnection.m
│ │ │ ├── RACPassthroughSubscriber.h
│ │ │ ├── RACPassthroughSubscriber.m
│ │ │ ├── RACQueueScheduler+Subclass.h
│ │ │ ├── RACQueueScheduler.h
│ │ │ ├── RACQueueScheduler.m
│ │ │ ├── RACReplaySubject.h
│ │ │ ├── RACReplaySubject.m
│ │ │ ├── RACReturnSignal.h
│ │ │ ├── RACReturnSignal.m
│ │ │ ├── RACScheduler+Private.h
│ │ │ ├── RACScheduler+Subclass.h
│ │ │ ├── RACScheduler.h
│ │ │ ├── RACScheduler.m
│ │ │ ├── RACScopedDisposable.h
│ │ │ ├── RACScopedDisposable.m
│ │ │ ├── RACSequence.h
│ │ │ ├── RACSequence.m
│ │ │ ├── RACSerialDisposable.h
│ │ │ ├── RACSerialDisposable.m
│ │ │ ├── RACSignal+Operations.h
│ │ │ ├── RACSignal+Operations.m
│ │ │ ├── RACSignal.h
│ │ │ ├── RACSignal.m
│ │ │ ├── RACSignalProvider.d
│ │ │ ├── RACSignalSequence.h
│ │ │ ├── RACSignalSequence.m
│ │ │ ├── RACStream+Private.h
│ │ │ ├── RACStream.h
│ │ │ ├── RACStream.m
│ │ │ ├── RACStringSequence.h
│ │ │ ├── RACStringSequence.m
│ │ │ ├── RACSubject.h
│ │ │ ├── RACSubject.m
│ │ │ ├── RACSubscriber+Private.h
│ │ │ ├── RACSubscriber.h
│ │ │ ├── RACSubscriber.m
│ │ │ ├── RACSubscriptingAssignmentTrampoline.h
│ │ │ ├── RACSubscriptingAssignmentTrampoline.m
│ │ │ ├── RACSubscriptionScheduler.h
│ │ │ ├── RACSubscriptionScheduler.m
│ │ │ ├── RACTargetQueueScheduler.h
│ │ │ ├── RACTargetQueueScheduler.m
│ │ │ ├── RACTestScheduler.h
│ │ │ ├── RACTestScheduler.m
│ │ │ ├── RACTuple.h
│ │ │ ├── RACTuple.m
│ │ │ ├── RACTupleSequence.h
│ │ │ ├── RACTupleSequence.m
│ │ │ ├── RACUnarySequence.h
│ │ │ ├── RACUnarySequence.m
│ │ │ ├── RACUnit.h
│ │ │ ├── RACUnit.m
│ │ │ ├── RACValueTransformer.h
│ │ │ ├── RACValueTransformer.m
│ │ │ ├── ReactiveObjC.h
│ │ │ ├── UIActionSheet+RACSignalSupport.h
│ │ │ ├── UIActionSheet+RACSignalSupport.m
│ │ │ ├── UIAlertView+RACSignalSupport.h
│ │ │ ├── UIAlertView+RACSignalSupport.m
│ │ │ ├── UIBarButtonItem+RACCommandSupport.h
│ │ │ ├── UIBarButtonItem+RACCommandSupport.m
│ │ │ ├── UIButton+RACCommandSupport.h
│ │ │ ├── UIButton+RACCommandSupport.m
│ │ │ ├── UICollectionReusableView+RACSignalSupport.h
│ │ │ ├── UICollectionReusableView+RACSignalSupport.m
│ │ │ ├── UIControl+RACSignalSupport.h
│ │ │ ├── UIControl+RACSignalSupport.m
│ │ │ ├── UIControl+RACSignalSupportPrivate.h
│ │ │ ├── UIControl+RACSignalSupportPrivate.m
│ │ │ ├── UIDatePicker+RACSignalSupport.h
│ │ │ ├── UIDatePicker+RACSignalSupport.m
│ │ │ ├── UIGestureRecognizer+RACSignalSupport.h
│ │ │ ├── UIGestureRecognizer+RACSignalSupport.m
│ │ │ ├── UIImagePickerController+RACSignalSupport.h
│ │ │ ├── UIImagePickerController+RACSignalSupport.m
│ │ │ ├── UIRefreshControl+RACCommandSupport.h
│ │ │ ├── UIRefreshControl+RACCommandSupport.m
│ │ │ ├── UISegmentedControl+RACSignalSupport.h
│ │ │ ├── UISegmentedControl+RACSignalSupport.m
│ │ │ ├── UISlider+RACSignalSupport.h
│ │ │ ├── UISlider+RACSignalSupport.m
│ │ │ ├── UIStepper+RACSignalSupport.h
│ │ │ ├── UIStepper+RACSignalSupport.m
│ │ │ ├── UISwitch+RACSignalSupport.h
│ │ │ ├── UISwitch+RACSignalSupport.m
│ │ │ ├── UITableViewCell+RACSignalSupport.h
│ │ │ ├── UITableViewCell+RACSignalSupport.m
│ │ │ ├── UITableViewHeaderFooterView+RACSignalSupport.h
│ │ │ ├── UITableViewHeaderFooterView+RACSignalSupport.m
│ │ │ ├── UITextField+RACSignalSupport.h
│ │ │ ├── UITextField+RACSignalSupport.m
│ │ │ ├── UITextView+RACSignalSupport.h
│ │ │ ├── UITextView+RACSignalSupport.m
│ │ │ └── extobjc
│ │ │ ├── RACEXTKeyPathCoding.h
│ │ │ ├── RACEXTRuntimeExtensions.h
│ │ │ ├── RACEXTRuntimeExtensions.m
│ │ │ ├── RACEXTScope.h
│ │ │ └── RACmetamacros.h
│ ├── SocketRocket
│ │ ├── LICENSE
│ │ ├── README.rst
│ │ └── SocketRocket
│ │ │ ├── SRWebSocket.h
│ │ │ ├── SRWebSocket.m
│ │ │ └── SocketRocket.h
│ ├── Target Support Files
│ │ ├── CGSizeAspectRatioTool
│ │ │ ├── CGSizeAspectRatioTool-dummy.m
│ │ │ ├── CGSizeAspectRatioTool-prefix.pch
│ │ │ ├── CGSizeAspectRatioTool-umbrella.h
│ │ │ ├── CGSizeAspectRatioTool.modulemap
│ │ │ ├── CGSizeAspectRatioTool.xcconfig
│ │ │ └── Info.plist
│ │ ├── KMSClient
│ │ │ ├── Info.plist
│ │ │ ├── KMSClient-dummy.m
│ │ │ ├── KMSClient-prefix.pch
│ │ │ ├── KMSClient-umbrella.h
│ │ │ ├── KMSClient.modulemap
│ │ │ └── KMSClient.xcconfig
│ │ ├── MBProgressHUD
│ │ │ ├── Info.plist
│ │ │ ├── MBProgressHUD-dummy.m
│ │ │ ├── MBProgressHUD-prefix.pch
│ │ │ ├── MBProgressHUD-umbrella.h
│ │ │ ├── MBProgressHUD.modulemap
│ │ │ └── MBProgressHUD.xcconfig
│ │ ├── Mantle
│ │ │ ├── Info.plist
│ │ │ ├── Mantle-dummy.m
│ │ │ ├── Mantle-prefix.pch
│ │ │ ├── Mantle-umbrella.h
│ │ │ ├── Mantle.modulemap
│ │ │ └── Mantle.xcconfig
│ │ ├── MantleNullValuesOmit
│ │ │ ├── Info.plist
│ │ │ ├── MantleNullValuesOmit-dummy.m
│ │ │ ├── MantleNullValuesOmit-prefix.pch
│ │ │ ├── MantleNullValuesOmit-umbrella.h
│ │ │ ├── MantleNullValuesOmit.modulemap
│ │ │ └── MantleNullValuesOmit.xcconfig
│ │ ├── NSDictionaryMerge
│ │ │ ├── Info.plist
│ │ │ ├── NSDictionaryMerge-dummy.m
│ │ │ ├── NSDictionaryMerge-prefix.pch
│ │ │ ├── NSDictionaryMerge-umbrella.h
│ │ │ ├── NSDictionaryMerge.modulemap
│ │ │ └── NSDictionaryMerge.xcconfig
│ │ ├── Pods-KMSWebRTC
│ │ │ ├── Info.plist
│ │ │ ├── Pods-KMSWebRTC-acknowledgements.markdown
│ │ │ ├── Pods-KMSWebRTC-acknowledgements.plist
│ │ │ ├── Pods-KMSWebRTC-dummy.m
│ │ │ ├── Pods-KMSWebRTC-resources.sh
│ │ │ ├── Pods-KMSWebRTC-umbrella.h
│ │ │ ├── Pods-KMSWebRTC.debug.xcconfig
│ │ │ ├── Pods-KMSWebRTC.modulemap
│ │ │ └── Pods-KMSWebRTC.release.xcconfig
│ │ ├── Pods-LoopBackCall
│ │ │ ├── Info.plist
│ │ │ ├── Pods-LoopBackCall-acknowledgements.markdown
│ │ │ ├── Pods-LoopBackCall-acknowledgements.plist
│ │ │ ├── Pods-LoopBackCall-dummy.m
│ │ │ ├── Pods-LoopBackCall-frameworks.sh
│ │ │ ├── Pods-LoopBackCall-resources.sh
│ │ │ ├── Pods-LoopBackCall-umbrella.h
│ │ │ ├── Pods-LoopBackCall.debug.xcconfig
│ │ │ ├── Pods-LoopBackCall.modulemap
│ │ │ └── Pods-LoopBackCall.release.xcconfig
│ │ ├── ReactiveObjC
│ │ │ ├── Info.plist
│ │ │ ├── ReactiveObjC-dummy.m
│ │ │ ├── ReactiveObjC-prefix.pch
│ │ │ ├── ReactiveObjC-umbrella.h
│ │ │ ├── ReactiveObjC.modulemap
│ │ │ └── ReactiveObjC.xcconfig
│ │ ├── SocketRocket
│ │ │ ├── Info.plist
│ │ │ ├── SocketRocket-dummy.m
│ │ │ ├── SocketRocket-prefix.pch
│ │ │ ├── SocketRocket-umbrella.h
│ │ │ ├── SocketRocket.modulemap
│ │ │ └── SocketRocket.xcconfig
│ │ └── UIImage+Additions
│ │ │ ├── Info.plist
│ │ │ ├── UIImage+Additions-dummy.m
│ │ │ ├── UIImage+Additions-prefix.pch
│ │ │ ├── UIImage+Additions-umbrella.h
│ │ │ ├── UIImage+Additions.modulemap
│ │ │ └── UIImage+Additions.xcconfig
│ ├── UIImage+Additions
│ │ ├── LICENSE.txt
│ │ ├── README.md
│ │ ├── UIImage+Additions.h
│ │ └── UIImage+Additions.m
│ └── WebRTC
│ │ ├── LICENSE.html
│ │ ├── README.md
│ │ └── WebRTC.framework
│ │ ├── Headers
│ │ ├── RTCAVFoundationVideoSource.h
│ │ ├── RTCAudioSource.h
│ │ ├── RTCAudioTrack.h
│ │ ├── RTCCameraPreviewView.h
│ │ ├── RTCConfiguration.h
│ │ ├── RTCDataChannel.h
│ │ ├── RTCDataChannelConfiguration.h
│ │ ├── RTCDispatcher.h
│ │ ├── RTCEAGLVideoView.h
│ │ ├── RTCFieldTrials.h
│ │ ├── RTCFileLogger.h
│ │ ├── RTCIceCandidate.h
│ │ ├── RTCIceServer.h
│ │ ├── RTCLegacyStatsReport.h
│ │ ├── RTCLogging.h
│ │ ├── RTCMacros.h
│ │ ├── RTCMediaConstraints.h
│ │ ├── RTCMediaSource.h
│ │ ├── RTCMediaStream.h
│ │ ├── RTCMediaStreamTrack.h
│ │ ├── RTCMetrics.h
│ │ ├── RTCMetricsSampleInfo.h
│ │ ├── RTCPeerConnection.h
│ │ ├── RTCPeerConnectionFactory.h
│ │ ├── RTCRtpCodecParameters.h
│ │ ├── RTCRtpEncodingParameters.h
│ │ ├── RTCRtpParameters.h
│ │ ├── RTCRtpReceiver.h
│ │ ├── RTCRtpSender.h
│ │ ├── RTCSSLAdapter.h
│ │ ├── RTCSessionDescription.h
│ │ ├── RTCTracing.h
│ │ ├── RTCVideoFrame.h
│ │ ├── RTCVideoRenderer.h
│ │ ├── RTCVideoSource.h
│ │ ├── RTCVideoTrack.h
│ │ ├── UIDevice+RTCDevice.h
│ │ └── WebRTC.h
│ │ ├── Info.plist
│ │ ├── Modules
│ │ └── module.modulemap
│ │ └── WebRTC
└── Sample
│ └── LoopBackCall
│ ├── LoopBackCall.xcodeproj
│ ├── project.pbxproj
│ └── project.xcworkspace
│ │ └── contents.xcworkspacedata
│ └── LoopBackCall
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── AudioOutputManager.h
│ ├── AudioOutputManager.m
│ ├── CallView.xib
│ ├── CallViewController.h
│ ├── CallViewController.m
│ ├── Images.xcassets
│ ├── AppIcon.appiconset
│ │ └── Contents.json
│ └── Contents.json
│ ├── Info.plist
│ ├── Launch Screen.storyboard
│ ├── RootView.xib
│ ├── RootViewController.h
│ ├── RootViewController.m
│ ├── View.xib
│ └── main.m
├── LICENSE
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | xcuserdata
2 | KMSWebRTCCall_podspec_lint.sh
3 | KMSWebRTCCall_podspec_push.sh
4 |
--------------------------------------------------------------------------------
/KMSWebRTC.podspec:
--------------------------------------------------------------------------------
1 | Pod::Spec.new do |s|
2 | s.name = "KMSWebRTC"
3 | s.version = "1.1.3"
4 | s.summary = "Kurento Media Server iOS Web RTC Call."
5 | s.homepage = "https://github.com/sdkdimon/kms-ios-webrtc-call"
6 | s.license = { :type => 'MIT', :file => 'LICENSE' }
7 | s.author = { "Dmitry Lizin" => "sdkdimon@gmail.com" }
8 | s.source = { :git => "https://github.com/sdkdimon/kms-ios-webrtc-call.git", :tag => s.version }
9 |
10 | s.platform = :ios, '7.0'
11 | s.requires_arc = true
12 | s.pod_target_xcconfig = { 'ENABLE_BITCODE' => 'NO' }
13 | s.module_name = 'KMSWebRTC'
14 | s.source_files = 'KMSWebRTC/KMSWebRTC/*.{h,m}'
15 | s.dependency 'KMSClient', '1.1.1'
16 | s.dependency 'ReactiveObjC', '2.1.2'
17 | s.dependency 'WebRTC', '57.2.16123'
18 |
19 | end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/KMSWebRTC.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/KMSWebRTC/KMSWebRTC.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/KMSWebRTC/KMSWebRTC/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleVersion
20 | $(CURRENT_PROJECT_VERSION)
21 | NSPrincipalClass
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/KMSWebRTC/KMSWebRTC/KMSWebRTC.h:
--------------------------------------------------------------------------------
1 | //
2 | // KMSWebRTC.h
3 | // KMSWebRTC
4 | //
5 | // Created by dimon on 28/09/2016.
6 | // Copyright © 2016 dimon. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | //! Project version number for KMSWebRTC.
12 | FOUNDATION_EXPORT double KMSWebRTCVersionNumber;
13 |
14 | //! Project version string for KMSWebRTC.
15 | FOUNDATION_EXPORT const unsigned char KMSWebRTCVersionString[];
16 |
17 | // In this header, you should import all the public headers of your framework using statements like #import
18 |
19 | #import
20 | #import
21 | #import
22 | #import
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/KMSWebRTC/KMSWebRTCCallDataSource.h:
--------------------------------------------------------------------------------
1 | //
2 | // KMSWebRTCCallDataSource.h
3 | // LoopBackCall
4 | //
5 | // Created by dimon on 11/08/16.
6 | // Copyright © 2016 CSLtd. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class KMSWebRTCCall;
12 | @class RTCMediaStream;
13 | @class RTCMediaConstraints;
14 |
15 | @protocol KMSWebRTCCallDataSource
16 |
17 | @required
18 | - (nonnull RTCMediaStream *)localMediaSteamForWebRTCCall:(nonnull KMSWebRTCCall *)webRTCCall;
19 | - (nonnull RTCMediaConstraints *)localMediaSteamConstraintsForWebRTCCall:(nonnull KMSWebRTCCall *)webRTCCall;
20 | - (nonnull RTCMediaConstraints *)peerConnetionMediaConstraintsForWebRTCCall:(nonnull KMSWebRTCCall *)webRTCCall;
21 |
22 | @optional
23 | - (nonnull NSArray *)sinkEndpointsForWebRTCCall:(nonnull KMSWebRTCCall *)webRTCCall;
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/KMSWebRTC/KMSWebRTC/KMSWebRTCCallDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // KMSWebRTCCallDelegate.h
3 | // LoopBackCall
4 | //
5 | // Created by dimon on 11/08/16.
6 | // Copyright © 2016 CSLtd. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "KMSWebRTCCallInitiator.h"
11 |
12 | @class KMSWebRTCCall;
13 | @class RTCMediaStream;
14 |
15 | @protocol KMSWebRTCCallDelegate
16 |
17 | @required
18 | - (void)webRTCCall:(nonnull KMSWebRTCCall *)webRTCCall didAddLocalMediaStream:(nonnull RTCMediaStream *)localMediaStream;
19 | - (void)webRTCCall:(nonnull KMSWebRTCCall *)webRTCCall didAddRemoteMediaStream:(nonnull RTCMediaStream *)remoteMediaStream;
20 | - (void)webRTCCallDidStart:(nonnull KMSWebRTCCall *)webRTCCall;
21 | - (void)webRTCCall:(nonnull KMSWebRTCCall *)webRTCCall hangupFromInitiator:(KMSWebRTCCallInitiator)inititator;
22 | - (void)webRTCCall:(nonnull KMSWebRTCCall *)webRTCCall didFailWithError:(nonnull NSError *)error;
23 | @end
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/KMSWebRTC/KMSWebRTCCallInitiator.h:
--------------------------------------------------------------------------------
1 | //
2 | // KMSWebRTCCallInitiator.h
3 | // LoopBackCall
4 | //
5 | // Created by dimon on 11/08/16.
6 | // Copyright © 2016 CSLtd. All rights reserved.
7 | //
8 |
9 | #ifndef KMSWebRTCCallInitiator_h
10 | #define KMSWebRTCCallInitiator_h
11 |
12 | typedef enum{
13 | KMSWebRTCCallInitiatorCaller,
14 | KMSWebRTCCallInitiatorCallee
15 | }KMSWebRTCCallInitiator;
16 |
17 | #endif /* KMSWebRTCCallInitiator_h */
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Podfile:
--------------------------------------------------------------------------------
1 | # Uncomment this line to define a global platform for your project
2 | workspace 'KMSWebRTC.xcworkspace'
3 | platform :ios, '8.0'
4 | use_frameworks!
5 |
6 | def shared_pods
7 | pod 'ReactiveObjC', '2.1.2'
8 | pod 'KMSClient', '1.1.1'
9 | pod 'MantleNullValuesOmit', '0.0.2'
10 | pod 'NSDictionaryMerge', '1.0'
11 | pod 'Mantle', '2.1.0'
12 | pod 'WebRTC', '57.2.16123'
13 |
14 | end
15 |
16 | target 'KMSWebRTC' do
17 | shared_pods
18 | end
19 |
20 | target 'LoopBackCall' do
21 | project 'Sample/LoopBackCall/LoopBackCall.xcodeproj'
22 | pod 'UIImage+Additions', '2.1.0'
23 | pod 'MBProgressHUD', '0.9.1'
24 | pod 'CGSizeAspectRatioTool', '1.0'
25 |
26 | shared_pods
27 | end
28 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/CGSizeAspectRatioTool/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 Dmitry
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/KMSRACSubject.h:
--------------------------------------------------------------------------------
1 | //
2 | // KMSRACSubject.h
3 | // KMSClient
4 | //
5 | // Created by dimon on 09/02/2017.
6 | // Copyright © 2017 dimon. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface KMSRACSubject : RACSubject
12 |
13 | - (NSUInteger)subscribersCount;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/KMSRACSubject.m:
--------------------------------------------------------------------------------
1 | //
2 | // KMSRACSubject.m
3 | // KMSClient
4 | //
5 | // Created by dimon on 09/02/2017.
6 | // Copyright © 2017 dimon. All rights reserved.
7 | //
8 |
9 | #import "KMSRACSubject.h"
10 |
11 | @interface KMSRACSubject ()
12 |
13 | - (NSMutableArray *)subscribers;
14 |
15 | @end
16 |
17 | @implementation KMSRACSubject
18 |
19 | - (NSUInteger)subscribersCount
20 | {
21 | return [[self subscribers] count];
22 | }
23 |
24 | @end
25 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/MessageFactory/KMSMessageFactoryMediaPipeline.h:
--------------------------------------------------------------------------------
1 | // KMSMessageFactoryMediaPipeline.h
2 | // Copyright (c) 2016 Dmitry Lizin (sdkdimon@gmail.com)
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 |
22 | #import "KMSRequestMessageFactory.h"
23 |
24 | @interface KMSMessageFactoryMediaPipeline : KMSRequestMessageFactory
25 |
26 | - (KMSRequestMessage *)create;
27 | - (KMSRequestMessage *)disposeObject:(NSString *)object;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/ModelLayer/Types/KMSCreationType.h:
--------------------------------------------------------------------------------
1 | // KMSCreationType.h
2 | // Copyright (c) 2016 Dmitry Lizin (sdkdimon@gmail.com)
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 |
22 | typedef enum {
23 | KMSCreatationTypeNone = 0,
24 | KMSCreationTypeWebRTCEndpoint,
25 | KMSCreationTypeMediaPipeline
26 | }KMSCreationType;
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/ModelLayer/Types/KMSMediaState.h:
--------------------------------------------------------------------------------
1 | //
2 | // KMSMediaState.h
3 | // LoopBackCall
4 | //
5 | // Created by dimon on 21/09/15.
6 | // Copyright © 2016 CSLtd. All rights reserved.
7 | //
8 |
9 | typedef enum{
10 | KMSMediaStateNone = 0,
11 | KMSMediaStateConnected,
12 | KMSMediaStateDisconnected
13 | }KMSMediaState;
14 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/ModelLayer/Types/KMSMediaType.h:
--------------------------------------------------------------------------------
1 | // KMSMediaType.h
2 | // Copyright (c) 2016 Dmitry Lizin (sdkdimon@gmail.com)
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 |
22 | typedef enum{
23 | KMSMediaTypeNone = 0,
24 | KMSMediaTypeAudio,
25 | KMSMediaTypeVideo,
26 | KMSMediaTypeData
27 | }KMSMediaType;
28 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/ModelLayer/Types/KMSMethod.h:
--------------------------------------------------------------------------------
1 | // KMSMethod.h
2 | // Copyright (c) 2016 Dmitry Lizin (sdkdimon@gmail.com)
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 |
22 | typedef enum {
23 | KMSMethodNone = 0,
24 | KMSMethodCreate,
25 | KMSMethodInvoke,
26 | KMSMethodSubscribe,
27 | KMSMethodUnsubscribe,
28 | KMSMethodRelease,
29 | KMSMethodOnEvent
30 | }KMSMethod;
31 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/KMSClient/KMSClient/UUID/UUID.h:
--------------------------------------------------------------------------------
1 | // UUID.h
2 | // Copyright (c) 2016 Dmitry Lizin (sdkdimon@gmail.com)
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notice and this permission notice shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 |
22 | #import
23 |
24 | @interface UUID : NSObject
25 | + (NSString *)uuid;
26 | @end
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 Dmitry Lizin
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/KMSClient/README.md:
--------------------------------------------------------------------------------
1 | # kms-ios-client
2 | Kurento Media Server iOS Client
3 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/MBProgressHUD/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2009-2015 Matej Bukovinski
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/MTLReflection.h:
--------------------------------------------------------------------------------
1 | //
2 | // MTLReflection.h
3 | // Mantle
4 | //
5 | // Created by Justin Spahr-Summers on 2013-03-12.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | /// Creates a selector from a key and a constant string.
12 | ///
13 | /// key - The key to insert into the generated selector. This key should be in
14 | /// its natural case.
15 | /// suffix - A string to append to the key as part of the selector.
16 | ///
17 | /// Returns a selector, or NULL if the input strings cannot form a valid
18 | /// selector.
19 | SEL MTLSelectorWithKeyPattern(NSString *key, const char *suffix) __attribute__((pure, nonnull(1, 2)));
20 |
21 | /// Creates a selector from a key and a constant prefix and suffix.
22 | ///
23 | /// prefix - A string to prepend to the key as part of the selector.
24 | /// key - The key to insert into the generated selector. This key should be in
25 | /// its natural case, and will have its first letter capitalized when
26 | /// inserted.
27 | /// suffix - A string to append to the key as part of the selector.
28 | ///
29 | /// Returns a selector, or NULL if the input strings cannot form a valid
30 | /// selector.
31 | SEL MTLSelectorWithCapitalizedKeyPattern(const char *prefix, NSString *key, const char *suffix) __attribute__((pure, nonnull(1, 2, 3)));
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/MTLTransformerErrorHandling.m:
--------------------------------------------------------------------------------
1 | //
2 | // MTLTransformerErrorHandling.h
3 | // Mantle
4 | //
5 | // Created by Robert Böhnke on 10/6/13.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import "MTLTransformerErrorHandling.h"
10 |
11 | NSString * const MTLTransformerErrorHandlingErrorDomain = @"MTLTransformerErrorHandlingErrorDomain";
12 |
13 | const NSInteger MTLTransformerErrorHandlingErrorInvalidInput = 1;
14 |
15 | NSString * const MTLTransformerErrorHandlingInputValueErrorKey = @"MTLTransformerErrorHandlingInputValueErrorKey";
16 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/Mantle.h:
--------------------------------------------------------------------------------
1 | //
2 | // Mantle.h
3 | // Mantle
4 | //
5 | // Created by Justin Spahr-Summers on 2012-09-04.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | //! Project version number for Mantle.
12 | FOUNDATION_EXPORT double MantleVersionNumber;
13 |
14 | //! Project version string for Mantle.
15 | FOUNDATION_EXPORT const unsigned char MantleVersionString[];
16 |
17 | #import
18 | #import
19 | #import
20 | #import
21 | #import
22 | #import
23 | #import
24 | #import
25 | #import
26 | #import
27 | #import
28 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSArray+MTLManipulationAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSArray+MTLManipulationAdditions.h
3 | // Mantle
4 | //
5 | // Created by Josh Abernathy on 9/19/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSArray (MTLManipulationAdditions)
12 |
13 | /// The first object in the array or nil if the array is empty.
14 | /// Forwards to `firstObject` which has been first declared in iOS7, but works with iOS4/10.6.
15 | @property (nonatomic, readonly, strong) id mtl_firstObject;
16 |
17 | /// Returns a new array without all instances of the given object.
18 | - (NSArray *)mtl_arrayByRemovingObject:(id)object;
19 |
20 | /// Returns a new array without the first object. If the array is empty, it
21 | /// returns the empty array.
22 | - (NSArray *)mtl_arrayByRemovingFirstObject;
23 |
24 | /// Returns a new array without the last object. If the array is empty, it
25 | /// returns the empty array.
26 | - (NSArray *)mtl_arrayByRemovingLastObject;
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSArray+MTLManipulationAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSArray+MTLManipulationAdditions.m
3 | // Mantle
4 | //
5 | // Created by Josh Abernathy on 9/19/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSArray+MTLManipulationAdditions.h"
10 |
11 | @interface NSArray (MTLDeclarations)
12 |
13 | // This declaration is needed so Mantle can be compiled with SDK 6 / 10.8.
14 | - (id)firstObject;
15 |
16 | @end
17 |
18 | @implementation NSArray (MTLManipulationAdditions)
19 |
20 | - (id)mtl_firstObject {
21 | return self.firstObject;
22 | }
23 |
24 | - (instancetype)mtl_arrayByRemovingObject:(id)object {
25 | NSMutableArray *result = [self mutableCopy];
26 | [result removeObject:object];
27 | return result;
28 | }
29 |
30 | - (instancetype)mtl_arrayByRemovingFirstObject {
31 | if (self.count == 0) return self;
32 |
33 | return [self subarrayWithRange:NSMakeRange(1, self.count - 1)];
34 | }
35 |
36 | - (instancetype)mtl_arrayByRemovingLastObject {
37 | if (self.count == 0) return self;
38 |
39 | return [self subarrayWithRange:NSMakeRange(0, self.count - 1)];
40 | }
41 |
42 | @end
43 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSDictionary+MTLJSONKeyPath.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+MTLJSONKeyPath.h
3 | // Mantle
4 | //
5 | // Created by Robert Böhnke on 19/03/14.
6 | // Copyright (c) 2014 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSDictionary (MTLJSONKeyPath)
12 |
13 | /// Looks up the value of a key path in the receiver.
14 | ///
15 | /// JSONKeyPath - The key path that should be resolved. Every element along this
16 | /// key path needs to be an instance of NSDictionary for the
17 | /// resolving to be successful.
18 | /// success - If not NULL, this will be set to a boolean indicating whether
19 | /// the key path was resolved successfully.
20 | /// error - If not NULL, this may be set to an error that occurs during
21 | /// resolving the value.
22 | ///
23 | /// Returns the value for the key path which may be nil. Clients should inspect
24 | /// the success parameter to decide how to proceed with the result.
25 | - (id)mtl_valueForJSONKeyPath:(NSString *)JSONKeyPath success:(BOOL *)success error:(NSError **)error;
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSDictionary+MTLManipulationAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+MTLManipulationAdditions.h
3 | // Mantle
4 | //
5 | // Created by Justin Spahr-Summers on 2012-09-24.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSDictionary (MTLManipulationAdditions)
12 |
13 | /// Merges the keys and values from the given dictionary into the receiver. If
14 | /// both the receiver and `dictionary` have a given key, the value from
15 | /// `dictionary` is used.
16 | ///
17 | /// Returns a new dictionary containing the entries of the receiver combined with
18 | /// those of `dictionary`.
19 | - (NSDictionary *)mtl_dictionaryByAddingEntriesFromDictionary:(NSDictionary *)dictionary;
20 |
21 | /// Creates a new dictionary with all the entries for the given keys removed from
22 | /// the receiver.
23 | - (NSDictionary *)mtl_dictionaryByRemovingValuesForKeys:(NSArray *)keys;
24 |
25 | @end
26 |
27 | @interface NSDictionary (MTLManipulationAdditions_Deprecated)
28 |
29 | - (NSDictionary *)mtl_dictionaryByRemovingEntriesWithKeys:(NSSet *)keys __attribute__((deprecated("Replaced by -mtl_dictionaryByRemovingValuesForKeys:")));
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSDictionary+MTLManipulationAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+MTLManipulationAdditions.m
3 | // Mantle
4 | //
5 | // Created by Justin Spahr-Summers on 2012-09-24.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSDictionary+MTLManipulationAdditions.h"
10 |
11 | @implementation NSDictionary (MTLManipulationAdditions)
12 |
13 | - (NSDictionary *)mtl_dictionaryByAddingEntriesFromDictionary:(NSDictionary *)dictionary {
14 | NSMutableDictionary *result = [self mutableCopy];
15 | [result addEntriesFromDictionary:dictionary];
16 | return result;
17 | }
18 |
19 | - (NSDictionary *)mtl_dictionaryByRemovingValuesForKeys:(NSArray *)keys {
20 | NSMutableDictionary *result = [self mutableCopy];
21 | [result removeObjectsForKeys:keys];
22 | return result;
23 | }
24 |
25 | @end
26 |
27 | @implementation NSDictionary (MTLManipulationAdditions_Deprecated)
28 |
29 | #pragma clang diagnostic push
30 | #pragma clang diagnostic ignored "-Wdeprecated"
31 |
32 | - (NSDictionary *)mtl_dictionaryByRemovingEntriesWithKeys:(NSSet *)keys {
33 | return [self mtl_dictionaryByRemovingValuesForKeys:keys.allObjects];
34 | }
35 |
36 | #pragma clang diagnostic pop
37 |
38 | @end
39 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSDictionary+MTLMappingAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+MTLMappingAdditions.h
3 | // Mantle
4 | //
5 | // Created by Robert Böhnke on 10/31/13.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSDictionary (MTLMappingAdditions)
12 |
13 | /// Creates an identity mapping for serialization.
14 | ///
15 | /// class - A subclass of MTLModel.
16 | ///
17 | /// Returns a dictionary that maps all properties of the given class to
18 | /// themselves.
19 | + (NSDictionary *)mtl_identityPropertyMapWithModel:(Class)modelClass;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSDictionary+MTLMappingAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+MTLMappingAdditions.m
3 | // Mantle
4 | //
5 | // Created by Robert Böhnke on 10/31/13.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import "MTLModel.h"
10 |
11 | #import "NSDictionary+MTLMappingAdditions.h"
12 |
13 | @implementation NSDictionary (MTLMappingAdditions)
14 |
15 | + (NSDictionary *)mtl_identityPropertyMapWithModel:(Class)modelClass {
16 | NSCParameterAssert([modelClass conformsToProtocol:@protocol(MTLModel)]);
17 |
18 | NSArray *propertyKeys = [modelClass propertyKeys].allObjects;
19 |
20 | return [NSDictionary dictionaryWithObjects:propertyKeys forKeys:propertyKeys];
21 | }
22 |
23 | @end
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSError+MTLModelException.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSError+MTLModelException.h
3 | // Mantle
4 | //
5 | // Created by Robert Böhnke on 7/6/13.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSError (MTLModelException)
12 |
13 | /// Creates a new error for an exception that occurred during updating an
14 | /// MTLModel.
15 | ///
16 | /// exception - The exception that was thrown while updating the model.
17 | /// This argument must not be nil.
18 | ///
19 | /// Returns an error that takes its localized description and failure reason
20 | /// from the exception.
21 | + (instancetype)mtl_modelErrorWithException:(NSException *)exception;
22 |
23 | @end
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSError+MTLModelException.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSError+MTLModelException.m
3 | // Mantle
4 | //
5 | // Created by Robert Böhnke on 7/6/13.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import "MTLModel.h"
10 |
11 | #import "NSError+MTLModelException.h"
12 |
13 | // The domain for errors originating from MTLModel.
14 | static NSString * const MTLModelErrorDomain = @"MTLModelErrorDomain";
15 |
16 | // An exception was thrown and caught.
17 | static const NSInteger MTLModelErrorExceptionThrown = 1;
18 |
19 | // Associated with the NSException that was caught.
20 | static NSString * const MTLModelThrownExceptionErrorKey = @"MTLModelThrownException";
21 |
22 | @implementation NSError (MTLModelException)
23 |
24 | + (instancetype)mtl_modelErrorWithException:(NSException *)exception {
25 | NSParameterAssert(exception != nil);
26 |
27 | NSDictionary *userInfo = @{
28 | NSLocalizedDescriptionKey: exception.description,
29 | NSLocalizedFailureReasonErrorKey: exception.reason,
30 | MTLModelThrownExceptionErrorKey: exception
31 | };
32 |
33 | return [NSError errorWithDomain:MTLModelErrorDomain code:MTLModelErrorExceptionThrown userInfo:userInfo];
34 | }
35 |
36 | @end
37 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSObject+MTLComparisonAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSObject+MTLComparisonAdditions.h
3 | // Mantle
4 | //
5 | // Created by Josh Vera on 10/26/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 | // Portions copyright (c) 2011 Bitswift. All rights reserved.
9 | // See the LICENSE file for more information.
10 | //
11 |
12 | #import
13 |
14 | /// Returns whether both objects are identical or equal via -isEqual:
15 | BOOL MTLEqualObjects(id obj1, id obj2);
16 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSObject+MTLComparisonAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSObject+MTLComparisonAdditions.m
3 | // Mantle
4 | //
5 | // Created by Josh Vera on 10/26/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 | // Portions copyright (c) 2011 Bitswift. All rights reserved.
9 | // See the LICENSE file for more information.
10 | //
11 |
12 | #import "NSObject+MTLComparisonAdditions.h"
13 |
14 | BOOL MTLEqualObjects(id obj1, id obj2) {
15 | return (obj1 == obj2 || [obj1 isEqual:obj2]);
16 | }
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSValueTransformer+MTLInversionAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSValueTransformer+MTLInversionAdditions.h
3 | // Mantle
4 | //
5 | // Created by Justin Spahr-Summers on 2013-05-18.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface NSValueTransformer (MTLInversionAdditions)
12 |
13 | /// Flips the direction of the receiver's transformation, such that
14 | /// -transformedValue: will become -reverseTransformedValue:, and vice-versa.
15 | ///
16 | /// The receiver must allow reverse transformation.
17 | ///
18 | /// Returns an inverted transformer.
19 | - (NSValueTransformer *)mtl_invertedTransformer;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/NSValueTransformer+MTLInversionAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSValueTransformer+MTLInversionAdditions.m
3 | // Mantle
4 | //
5 | // Created by Justin Spahr-Summers on 2013-05-18.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSValueTransformer+MTLInversionAdditions.h"
10 | #import "MTLTransformerErrorHandling.h"
11 | #import "MTLValueTransformer.h"
12 |
13 | @implementation NSValueTransformer (MTLInversionAdditions)
14 |
15 | - (NSValueTransformer *)mtl_invertedTransformer {
16 | NSParameterAssert(self.class.allowsReverseTransformation);
17 |
18 | if ([self conformsToProtocol:@protocol(MTLTransformerErrorHandling)]) {
19 | NSParameterAssert([self respondsToSelector:@selector(reverseTransformedValue:success:error:)]);
20 |
21 | id errorHandlingSelf = (id)self;
22 |
23 | return [MTLValueTransformer transformerUsingForwardBlock:^(id value, BOOL *success, NSError **error) {
24 | return [errorHandlingSelf reverseTransformedValue:value success:success error:error];
25 | } reverseBlock:^(id value, BOOL *success, NSError **error) {
26 | return [errorHandlingSelf transformedValue:value success:success error:error];
27 | }];
28 | } else {
29 | return [MTLValueTransformer transformerUsingForwardBlock:^(id value, BOOL *success, NSError **error) {
30 | return [self reverseTransformedValue:value];
31 | } reverseBlock:^(id value, BOOL *success, NSError **error) {
32 | return [self transformedValue:value];
33 | }];
34 | }
35 | }
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Mantle/Mantle/extobjc/EXTScope.m:
--------------------------------------------------------------------------------
1 | //
2 | // EXTScope.m
3 | // extobjc
4 | //
5 | // Created by Justin Spahr-Summers on 2011-05-04.
6 | // Copyright (C) 2012 Justin Spahr-Summers.
7 | // Released under the MIT license.
8 | //
9 |
10 | #import "EXTScope.h"
11 |
12 | void mtl_executeCleanupBlock (__strong mtl_cleanupBlock_t *block) {
13 | (*block)();
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/MantleNullValuesOmit/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2016 Dmitry Lizin
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/MantleNullValuesOmit/MantleNullValuesOmit/MantleNullValuesOmit/MTLJSONAdapter+NullValuesOmit.h:
--------------------------------------------------------------------------------
1 | //
2 | // MTLJSONAdapter+NullValuesOmit.h
3 | // Copyright (c) 2016 Dmitry Lizin (sdkdimon@gmail.com)
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #import
24 |
25 | @interface MTLJSONAdapter (NullValuesOmit)
26 |
27 | @end
28 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/MantleNullValuesOmit/MantleNullValuesOmit/MantleNullValuesOmit/MTLModel+NullValuesOmit.h:
--------------------------------------------------------------------------------
1 | //
2 | // MTLModel+NullValuesOmit.h
3 | // Copyright (c) 2016 Dmitry Lizin (sdkdimon@gmail.com)
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #import
24 |
25 | @interface MTLModel (NullValuesOmit)
26 |
27 | @property (assign, nonatomic, readwrite, getter=isOmitNullValues) BOOL omitNullValues;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/MantleNullValuesOmit/README.md:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/NSDictionaryMerge/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015 Dmitry Lizin (sdkdimon@gmail.com)
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/NSDictionaryMerge/NSDictionaryMerge/NSDictionary+Merge.h:
--------------------------------------------------------------------------------
1 |
2 | #import
3 |
4 | @interface NSDictionary (Merge)
5 | -(NSDictionary *)dictionaryByMergingDictionary:(NSDictionary *)dictionary;
6 | @end
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/NSDictionaryMerge/NSDictionaryMerge/NSDictionary+Merge.m:
--------------------------------------------------------------------------------
1 |
2 | #import "NSDictionary+Merge.h"
3 |
4 | @implementation NSDictionary (Merge)
5 |
6 | -(NSDictionary *)dictionaryByMergingDictionary:(NSDictionary *)dictionary{
7 | if(dictionary == nil){
8 | return self;
9 | }
10 |
11 | NSMutableDictionary *mutableSelf = [self mutableCopy];
12 | [mutableSelf addEntriesFromDictionary:dictionary];
13 | return [mutableSelf copy];
14 |
15 | }
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/LICENSE.md:
--------------------------------------------------------------------------------
1 | **Copyright (c) 2012 - 2016, GitHub, Inc.**
2 | **All rights reserved.**
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy of
5 | this software and associated documentation files (the "Software"), to deal in
6 | the Software without restriction, including without limitation the rights to
7 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
8 | the Software, and to permit persons to whom the Software is furnished to do so,
9 | subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in all
12 | copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
16 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
17 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
18 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/MKAnnotationView+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // MKAnnotationView+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Zak Remer on 3/31/15.
6 | // Copyright (c) 2015 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 |
12 | @class RACSignal<__covariant ValueType>;
13 | @class RACUnit;
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @interface MKAnnotationView (RACSignalSupport)
18 |
19 | /// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon
20 | /// the receiver.
21 | ///
22 | /// Examples
23 | ///
24 | /// [[[self.cancelButton
25 | /// rac_signalForControlEvents:UIControlEventTouchUpInside]
26 | /// takeUntil:self.rac_prepareForReuseSignal]
27 | /// subscribeNext:^(UIButton *x) {
28 | /// // do other things
29 | /// }];
30 | @property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;
31 |
32 | @end
33 |
34 | NS_ASSUME_NONNULL_END
35 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/MKAnnotationView+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // MKAnnotationView+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Zak Remer on 3/31/15.
6 | // Copyright (c) 2015 GitHub. All rights reserved.
7 | //
8 |
9 | #import "MKAnnotationView+RACSignalSupport.h"
10 | #import "NSObject+RACDescription.h"
11 | #import "NSObject+RACSelectorSignal.h"
12 | #import "RACSignal+Operations.h"
13 | #import "RACUnit.h"
14 | #import
15 |
16 | @implementation MKAnnotationView (RACSignalSupport)
17 |
18 | - (RACSignal *)rac_prepareForReuseSignal {
19 | RACSignal *signal = objc_getAssociatedObject(self, _cmd);
20 | if (signal != nil) return signal;
21 |
22 | signal = [[[self
23 | rac_signalForSelector:@selector(prepareForReuse)]
24 | mapReplace:RACUnit.defaultUnit]
25 | setNameWithFormat:@"%@ -rac_prepareForReuseSignal", RACDescription(self)];
26 |
27 | objc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
28 | return signal;
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSArray+RACSequenceAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSArray+RACSequenceAdditions.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSequence<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSArray<__covariant ObjectType> (RACSequenceAdditions)
16 |
17 | /// Creates and returns a sequence corresponding to the receiver.
18 | ///
19 | /// Mutating the receiver will not affect the sequence after it's been created.
20 | @property (nonatomic, copy, readonly) RACSequence *rac_sequence;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSArray+RACSequenceAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSArray+RACSequenceAdditions.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSArray+RACSequenceAdditions.h"
10 | #import "RACArraySequence.h"
11 |
12 | @implementation NSArray (RACSequenceAdditions)
13 |
14 | - (RACSequence *)rac_sequence {
15 | return [RACArraySequence sequenceWithArray:self offset:0];
16 | }
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSData+RACSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSData+RACSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/11/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACScheduler;
12 | @class RACSignal<__covariant ValueType>;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface NSData (RACSupport)
17 |
18 | // Read the data at the URL using -[NSData initWithContentsOfURL:options:error:].
19 | // Sends the data or the error.
20 | //
21 | // scheduler - cannot be nil.
22 | + (RACSignal *)rac_readContentsOfURL:(nullable NSURL *)URL options:(NSDataReadingOptions)options scheduler:(RACScheduler *)scheduler;
23 |
24 | @end
25 |
26 | NS_ASSUME_NONNULL_END
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSData+RACSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSData+RACSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/11/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "NSData+RACSupport.h"
10 | #import "RACReplaySubject.h"
11 | #import "RACScheduler.h"
12 |
13 | @implementation NSData (RACSupport)
14 |
15 | + (RACSignal *)rac_readContentsOfURL:(NSURL *)URL options:(NSDataReadingOptions)options scheduler:(RACScheduler *)scheduler {
16 | NSCParameterAssert(scheduler != nil);
17 |
18 | RACReplaySubject *subject = [RACReplaySubject subject];
19 | [subject setNameWithFormat:@"+rac_readContentsOfURL: %@ options: %lu scheduler: %@", URL, (unsigned long)options, scheduler];
20 |
21 | [scheduler schedule:^{
22 | NSError *error = nil;
23 | NSData *data = [[NSData alloc] initWithContentsOfURL:URL options:options error:&error];
24 | if (data == nil) {
25 | [subject sendError:error];
26 | } else {
27 | [subject sendNext:data];
28 | [subject sendCompleted];
29 | }
30 | }];
31 |
32 | return subject;
33 | }
34 |
35 | @end
36 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSDictionary+RACSequenceAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+RACSequenceAdditions.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSequence<__covariant ValueType>;
12 | @class RACTuple;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface NSDictionary<__covariant KeyType, __covariant ObjectType> (RACSequenceAdditions)
17 |
18 | /// Creates and returns a sequence of RACTuple key/value pairs. The key will be
19 | /// the first element in the tuple, and the value will be the second.
20 | ///
21 | /// Mutating the receiver will not affect the sequence after it's been created.
22 | @property (nonatomic, copy, readonly) RACSequence *rac_sequence;
23 |
24 | /// Creates and returns a sequence corresponding to the keys in the receiver.
25 | ///
26 | /// Mutating the receiver will not affect the sequence after it's been created.
27 | @property (nonatomic, copy, readonly) RACSequence *rac_keySequence;
28 |
29 | /// Creates and returns a sequence corresponding to the values in the receiver.
30 | ///
31 | /// Mutating the receiver will not affect the sequence after it's been created.
32 | @property (nonatomic, copy, readonly) RACSequence *rac_valueSequence;
33 |
34 | @end
35 |
36 | NS_ASSUME_NONNULL_END
37 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSDictionary+RACSequenceAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSDictionary+RACSequenceAdditions.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSDictionary+RACSequenceAdditions.h"
10 | #import "NSArray+RACSequenceAdditions.h"
11 | #import "RACSequence.h"
12 | #import "RACTuple.h"
13 |
14 | @implementation NSDictionary (RACSequenceAdditions)
15 |
16 | - (RACSequence *)rac_sequence {
17 | NSDictionary *immutableDict = [self copy];
18 |
19 | // TODO: First class support for dictionary sequences.
20 | return [immutableDict.allKeys.rac_sequence map:^(id key) {
21 | id value = immutableDict[key];
22 | return RACTuplePack(key, value);
23 | }];
24 | }
25 |
26 | - (RACSequence *)rac_keySequence {
27 | return self.allKeys.rac_sequence;
28 | }
29 |
30 | - (RACSequence *)rac_valueSequence {
31 | return self.allValues.rac_sequence;
32 | }
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSEnumerator+RACSequenceAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSEnumerator+RACSequenceAdditions.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 07/01/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSequence<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSEnumerator (RACSequenceAdditions)
16 |
17 | /// Creates and returns a sequence corresponding to the receiver.
18 | ///
19 | /// The receiver is exhausted lazily as the sequence is enumerated.
20 | @property (nonatomic, copy, readonly) RACSequence *rac_sequence;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSEnumerator+RACSequenceAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSEnumerator+RACSequenceAdditions.m
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 07/01/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "NSEnumerator+RACSequenceAdditions.h"
10 | #import "RACSequence.h"
11 |
12 | @implementation NSEnumerator (RACSequenceAdditions)
13 |
14 | - (RACSequence *)rac_sequence {
15 | return [RACSequence sequenceWithHeadBlock:^{
16 | return [self nextObject];
17 | } tailBlock:^{
18 | return self.rac_sequence;
19 | }];
20 | }
21 |
22 | @end
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSFileHandle+RACSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSFileHandle+RACSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/10/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSFileHandle (RACSupport)
16 |
17 | // Read any available data in the background and send it. Completes when data
18 | // length is <= 0.
19 | - (RACSignal *)rac_readInBackground;
20 |
21 | @end
22 |
23 | NS_ASSUME_NONNULL_END
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSFileHandle+RACSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSFileHandle+RACSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/10/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSFileHandle+RACSupport.h"
10 | #import "NSNotificationCenter+RACSupport.h"
11 | #import "NSObject+RACDescription.h"
12 | #import "RACReplaySubject.h"
13 | #import "RACDisposable.h"
14 |
15 | @implementation NSFileHandle (RACSupport)
16 |
17 | - (RACSignal *)rac_readInBackground {
18 | RACReplaySubject *subject = [RACReplaySubject subject];
19 | [subject setNameWithFormat:@"%@ -rac_readInBackground", RACDescription(self)];
20 |
21 | RACSignal *dataNotification = [[[NSNotificationCenter defaultCenter] rac_addObserverForName:NSFileHandleReadCompletionNotification object:self] map:^(NSNotification *note) {
22 | return note.userInfo[NSFileHandleNotificationDataItem];
23 | }];
24 |
25 | __block RACDisposable *subscription = [dataNotification subscribeNext:^(NSData *data) {
26 | if (data.length > 0) {
27 | [subject sendNext:data];
28 | [self readInBackgroundAndNotify];
29 | } else {
30 | [subject sendCompleted];
31 | [subscription dispose];
32 | }
33 | }];
34 |
35 | [self readInBackgroundAndNotify];
36 |
37 | return subject;
38 | }
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSIndexSet+RACSequenceAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSIndexSet+RACSequenceAdditions.h
3 | // ReactiveObjC
4 | //
5 | // Created by Sergey Gavrilyuk on 12/17/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSequence<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSIndexSet (RACSequenceAdditions)
16 |
17 | /// Creates and returns a sequence of indexes (as `NSNumber`s) corresponding to
18 | /// the receiver.
19 | ///
20 | /// Mutating the receiver will not affect the sequence after it's been created.
21 | @property (nonatomic, copy, readonly) RACSequence *rac_sequence;
22 |
23 | @end
24 |
25 | NS_ASSUME_NONNULL_END
26 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSIndexSet+RACSequenceAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSIndexSet+RACSequenceAdditions.m
3 | // ReactiveObjC
4 | //
5 | // Created by Sergey Gavrilyuk on 12/17/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "NSIndexSet+RACSequenceAdditions.h"
10 | #import "RACIndexSetSequence.h"
11 |
12 | @implementation NSIndexSet (RACSequenceAdditions)
13 |
14 | - (RACSequence *)rac_sequence {
15 | return [RACIndexSetSequence sequenceWithIndexSet:self];
16 | }
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSNotificationCenter+RACSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSNotificationCenter+RACSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/10/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSNotificationCenter (RACSupport)
16 |
17 | // Sends the NSNotification every time the notification is posted.
18 | - (RACSignal *)rac_addObserverForName:(nullable NSString *)notificationName object:(nullable id)object;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSNotificationCenter+RACSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSNotificationCenter+RACSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/10/12.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSNotificationCenter+RACSupport.h"
10 | #import
11 | #import "RACSignal.h"
12 | #import "RACSubscriber.h"
13 | #import "RACDisposable.h"
14 |
15 | @implementation NSNotificationCenter (RACSupport)
16 |
17 | - (RACSignal *)rac_addObserverForName:(NSString *)notificationName object:(id)object {
18 | @unsafeify(object);
19 | return [[RACSignal createSignal:^(id subscriber) {
20 | @strongify(object);
21 | id observer = [self addObserverForName:notificationName object:object queue:nil usingBlock:^(NSNotification *note) {
22 | [subscriber sendNext:note];
23 | }];
24 |
25 | return [RACDisposable disposableWithBlock:^{
26 | [self removeObserver:observer];
27 | }];
28 | }] setNameWithFormat:@"-rac_addObserverForName: %@ object: <%@: %p>", notificationName, [object class], object];
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSObject+RACDeallocating.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSObject+RACDeallocating.h
3 | // ReactiveObjC
4 | //
5 | // Created by Kazuo Koga on 2013/03/15.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACCompoundDisposable;
12 | @class RACDisposable;
13 | @class RACSignal<__covariant ValueType>;
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @interface NSObject (RACDeallocating)
18 |
19 | /// The compound disposable which will be disposed of when the receiver is
20 | /// deallocated.
21 | @property (atomic, readonly, strong) RACCompoundDisposable *rac_deallocDisposable;
22 |
23 | /// Returns a signal that will complete immediately before the receiver is fully
24 | /// deallocated. If already deallocated when the signal is subscribed to,
25 | /// a `completed` event will be sent immediately.
26 | - (RACSignal *)rac_willDeallocSignal;
27 |
28 | @end
29 |
30 | NS_ASSUME_NONNULL_END
31 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSObject+RACDescription.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSObject+RACDescription.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-05-13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | // A simplified description of the object, which does not invoke -description
12 | // (and thus should be much faster in many cases).
13 | //
14 | // This is for debugging purposes only, and will return a constant string
15 | // unless the RAC_DEBUG_SIGNAL_NAMES environment variable is set.
16 | NSString *RACDescription(id object);
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSObject+RACDescription.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSObject+RACDescription.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-05-13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "NSObject+RACDescription.h"
10 | #import "RACTuple.h"
11 |
12 | @implementation NSValue (RACDescription)
13 |
14 | - (NSString *)rac_description {
15 | return self.description;
16 | }
17 |
18 | @end
19 |
20 | @implementation NSString (RACDescription)
21 |
22 | - (NSString *)rac_description {
23 | return self.description;
24 | }
25 |
26 | @end
27 |
28 | @implementation RACTuple (RACDescription)
29 |
30 | - (NSString *)rac_description {
31 | if (getenv("RAC_DEBUG_SIGNAL_NAMES") != NULL) {
32 | return self.allObjects.description;
33 | } else {
34 | return @"(description skipped)";
35 | }
36 | }
37 |
38 | @end
39 |
40 | NSString *RACDescription(id object) {
41 | if (getenv("RAC_DEBUG_SIGNAL_NAMES") != NULL) {
42 | if ([object respondsToSelector:@selector(rac_description)]) {
43 | return [object rac_description];
44 | } else {
45 | return [[NSString alloc] initWithFormat:@"<%@: %p>", [object class], object];
46 | }
47 | } else {
48 | return @"(description skipped)";
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSOrderedSet+RACSequenceAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSOrderedSet+RACSequenceAdditions.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSequence<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSOrderedSet<__covariant ObjectType> (RACSequenceAdditions)
16 |
17 | /// Creates and returns a sequence corresponding to the receiver.
18 | ///
19 | /// Mutating the receiver will not affect the sequence after it's been created.
20 | @property (nonatomic, copy, readonly) RACSequence *rac_sequence;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSOrderedSet+RACSequenceAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSOrderedSet+RACSequenceAdditions.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSOrderedSet+RACSequenceAdditions.h"
10 | #import "NSArray+RACSequenceAdditions.h"
11 |
12 | @implementation NSOrderedSet (RACSequenceAdditions)
13 |
14 | - (RACSequence *)rac_sequence {
15 | // TODO: First class support for ordered set sequences.
16 | return self.array.rac_sequence;
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSSet+RACSequenceAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSSet+RACSequenceAdditions.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSequence<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSSet<__covariant ObjectType> (RACSequenceAdditions)
16 |
17 | /// Creates and returns a sequence corresponding to the receiver.
18 | ///
19 | /// Mutating the receiver will not affect the sequence after it's been created.
20 | @property (nonatomic, copy, readonly) RACSequence *rac_sequence;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSSet+RACSequenceAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSSet+RACSequenceAdditions.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSSet+RACSequenceAdditions.h"
10 | #import "NSArray+RACSequenceAdditions.h"
11 |
12 | @implementation NSSet (RACSequenceAdditions)
13 |
14 | - (RACSequence *)rac_sequence {
15 | // TODO: First class support for set sequences.
16 | return self.allObjects.rac_sequence;
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSString+RACKeyPathUtilities.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSString+RACKeyPathUtilities.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 05/05/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | // A private category of methods to extract parts of a key path.
12 | @interface NSString (RACKeyPathUtilities)
13 |
14 | // Returns an array of the components of the receiver.
15 | //
16 | // Calling this method on a string that isn't a key path is considered undefined
17 | // behavior.
18 | - (NSArray *)rac_keyPathComponents;
19 |
20 | // Returns a key path with all the components of the receiver except for the
21 | // last one.
22 | //
23 | // Calling this method on a string that isn't a key path is considered undefined
24 | // behavior.
25 | - (NSString *)rac_keyPathByDeletingLastKeyPathComponent;
26 |
27 | // Returns a key path with all the components of the receiver expect for the
28 | // first one.
29 | //
30 | // Calling this method on a string that isn't a key path is considered undefined
31 | // behavior.
32 | - (NSString *)rac_keyPathByDeletingFirstKeyPathComponent;
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSString+RACKeyPathUtilities.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSString+RACKeyPathUtilities.m
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 05/05/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "NSString+RACKeyPathUtilities.h"
10 |
11 | @implementation NSString (RACKeyPathUtilities)
12 |
13 | - (NSArray *)rac_keyPathComponents {
14 | if (self.length == 0) {
15 | return nil;
16 | }
17 | return [self componentsSeparatedByString:@"."];
18 | }
19 |
20 | - (NSString *)rac_keyPathByDeletingLastKeyPathComponent {
21 | NSUInteger lastDotIndex = [self rangeOfString:@"." options:NSBackwardsSearch].location;
22 | if (lastDotIndex == NSNotFound) {
23 | return nil;
24 | }
25 | return [self substringToIndex:lastDotIndex];
26 | }
27 |
28 | - (NSString *)rac_keyPathByDeletingFirstKeyPathComponent {
29 | NSUInteger firstDotIndex = [self rangeOfString:@"."].location;
30 | if (firstDotIndex == NSNotFound) {
31 | return nil;
32 | }
33 | return [self substringFromIndex:firstDotIndex + 1];
34 | }
35 |
36 | @end
37 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSString+RACSequenceAdditions.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSString+RACSequenceAdditions.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSequence<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSString (RACSequenceAdditions)
16 |
17 | /// Creates and returns a sequence containing strings corresponding to each
18 | /// composed character sequence in the receiver.
19 | ///
20 | /// Mutating the receiver will not affect the sequence after it's been created.
21 | @property (nonatomic, copy, readonly) RACSequence *rac_sequence;
22 |
23 | @end
24 |
25 | NS_ASSUME_NONNULL_END
26 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSString+RACSequenceAdditions.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSString+RACSequenceAdditions.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "NSString+RACSequenceAdditions.h"
10 | #import "RACStringSequence.h"
11 |
12 | @implementation NSString (RACSequenceAdditions)
13 |
14 | - (RACSequence *)rac_sequence {
15 | return [RACStringSequence sequenceWithString:self offset:0];
16 | }
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSString+RACSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSString+RACSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/11/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACScheduler;
12 | @class RACSignal<__covariant ValueType>;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface NSString (RACSupport)
17 |
18 | // Reads in the contents of the file using +[NSString stringWithContentsOfURL:usedEncoding:error:].
19 | // Note that encoding won't be valid until the signal completes successfully.
20 | //
21 | // scheduler - cannot be nil.
22 | + (RACSignal *)rac_readContentsOfURL:(NSURL *)URL usedEncoding:(NSStringEncoding *)encoding scheduler:(RACScheduler *)scheduler;
23 |
24 | @end
25 |
26 | NS_ASSUME_NONNULL_END
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSString+RACSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // NSString+RACSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/11/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "NSString+RACSupport.h"
10 | #import "RACReplaySubject.h"
11 | #import "RACScheduler.h"
12 |
13 | @implementation NSString (RACSupport)
14 |
15 | + (RACSignal *)rac_readContentsOfURL:(NSURL *)URL usedEncoding:(NSStringEncoding *)encoding scheduler:(RACScheduler *)scheduler {
16 | NSCParameterAssert(URL != nil);
17 | NSCParameterAssert(encoding != nil);
18 | NSCParameterAssert(scheduler != nil);
19 |
20 | RACReplaySubject *subject = [RACReplaySubject subject];
21 | [subject setNameWithFormat:@"+rac_readContentsOfURL: %@ usedEncoding:scheduler: %@", URL, scheduler];
22 |
23 | [scheduler schedule:^{
24 | NSError *error = nil;
25 | NSString *string = [NSString stringWithContentsOfURL:URL usedEncoding:encoding error:&error];
26 | if (string == nil) {
27 | [subject sendError:error];
28 | } else {
29 | [subject sendNext:string];
30 | [subject sendCompleted];
31 | }
32 | }];
33 |
34 | return subject;
35 | }
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSURLConnection+RACSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSURLConnection+RACSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-10-01.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACTuple;
12 | @class RACSignal<__covariant ValueType>;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface NSURLConnection (RACSupport)
17 |
18 | // Lazily loads data for the given request in the background.
19 | //
20 | // request - The URL request to load. This must not be nil.
21 | //
22 | // Returns a signal which will begin loading the request upon each subscription,
23 | // then send a `RACTuple` of the received `NSURLResponse` and downloaded
24 | // `NSData`, and complete on a background thread. If any errors occur, the
25 | // returned signal will error out.
26 | + (RACSignal *)rac_sendAsynchronousRequest:(NSURLRequest *)request;
27 |
28 | @end
29 |
30 | NS_ASSUME_NONNULL_END
31 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/NSUserDefaults+RACSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // NSUserDefaults+RACSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Matt Diephouse on 12/19/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface NSUserDefaults (RACSupport)
16 |
17 | /// Creates and returns a terminal for binding the user defaults key.
18 | ///
19 | /// **Note:** The value in the user defaults is *asynchronously* updated with
20 | /// values sent to the channel.
21 | ///
22 | /// key - The user defaults key to create the channel terminal for.
23 | ///
24 | /// Returns a channel terminal that sends the value of the user defaults key
25 | /// upon subscription, sends an updated value whenever the default changes, and
26 | /// updates the default asynchronously with values it receives.
27 | - (RACChannelTerminal *)rac_channelTerminalForKey:(NSString *)key;
28 |
29 | @end
30 |
31 | NS_ASSUME_NONNULL_END
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACArraySequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACArraySequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | // Private class that adapts an array to the RACSequence interface.
12 | @interface RACArraySequence : RACSequence
13 |
14 | // Returns a sequence for enumerating over the given array, starting from the
15 | // given offset. The array will be copied to prevent mutation.
16 | + (RACSequence *)sequenceWithArray:(NSArray *)array offset:(NSUInteger)offset;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACBehaviorSubject.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACBehaviorSubject.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/16/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSubject.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// A behavior subject sends the last value it received when it is subscribed to.
14 | @interface RACBehaviorSubject : RACSubject
15 |
16 | /// Creates a new behavior subject with a default value. If it hasn't received
17 | /// any values when it gets subscribed to, it sends the default value.
18 | + (instancetype)behaviorSubjectWithDefaultValue:(nullable id)value;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACBehaviorSubject.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACBehaviorSubject.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/16/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACBehaviorSubject.h"
10 | #import "RACDisposable.h"
11 | #import "RACScheduler+Private.h"
12 |
13 | @interface RACBehaviorSubject ()
14 |
15 | // This property should only be used while synchronized on self.
16 | @property (nonatomic, strong) id currentValue;
17 |
18 | @end
19 |
20 | @implementation RACBehaviorSubject
21 |
22 | #pragma mark Lifecycle
23 |
24 | + (instancetype)behaviorSubjectWithDefaultValue:(id)value {
25 | RACBehaviorSubject *subject = [self subject];
26 | subject.currentValue = value;
27 | return subject;
28 | }
29 |
30 | #pragma mark RACSignal
31 |
32 | - (RACDisposable *)subscribe:(id)subscriber {
33 | RACDisposable *subscriptionDisposable = [super subscribe:subscriber];
34 |
35 | RACDisposable *schedulingDisposable = [RACScheduler.subscriptionScheduler schedule:^{
36 | @synchronized (self) {
37 | [subscriber sendNext:self.currentValue];
38 | }
39 | }];
40 |
41 | return [RACDisposable disposableWithBlock:^{
42 | [subscriptionDisposable dispose];
43 | [schedulingDisposable dispose];
44 | }];
45 | }
46 |
47 | #pragma mark RACSubscriber
48 |
49 | - (void)sendNext:(id)value {
50 | @synchronized (self) {
51 | self.currentValue = value;
52 | [super sendNext:value];
53 | }
54 | }
55 |
56 | @end
57 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACBlockTrampoline.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACBlockTrampoline.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 10/21/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACTuple;
12 |
13 | // A private class that allows a limited type of dynamic block invocation.
14 | @interface RACBlockTrampoline : NSObject
15 |
16 | // Invokes the given block with the given arguments. All of the block's
17 | // argument types must be objects and it must be typed to return an object.
18 | //
19 | // At this time, it only supports blocks that take up to 15 arguments. Any more
20 | // is just cray.
21 | //
22 | // block - The block to invoke. Must accept as many arguments as are given in
23 | // the arguments array. Cannot be nil.
24 | // arguments - The arguments with which to invoke the block. `RACTupleNil`s will
25 | // be passed as nils.
26 | //
27 | // Returns the return value of invoking the block.
28 | + (id)invokeBlock:(id)block withArguments:(RACTuple *)arguments;
29 |
30 | @end
31 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACCompoundDisposableProvider.d:
--------------------------------------------------------------------------------
1 | provider RACCompoundDisposable {
2 | probe added(char *compoundDisposable, char *disposable, long newTotal);
3 | probe removed(char *compoundDisposable, char *disposable, long newTotal);
4 | };
5 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACDelegateProxy.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACDelegateProxy.h
3 | // ReactiveObjC
4 | //
5 | // Created by Cody Krieger on 5/19/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | // A private delegate object suitable for using
16 | // -rac_signalForSelector:fromProtocol: upon.
17 | @interface RACDelegateProxy : NSObject
18 |
19 | // The delegate to which messages should be forwarded if not handled by
20 | // any -signalForSelector: applications.
21 | @property (nonatomic, unsafe_unretained) id rac_proxiedDelegate;
22 |
23 | // Creates a delegate proxy capable of responding to selectors from `protocol`.
24 | - (instancetype)initWithProtocol:(Protocol *)protocol;
25 |
26 | // Calls -rac_signalForSelector:fromProtocol: using the `protocol` specified
27 | // during initialization.
28 | - (RACSignal *)signalForSelector:(SEL)selector;
29 |
30 | @end
31 |
32 | NS_ASSUME_NONNULL_END
33 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACDisposable.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACDisposable.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/16/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACScopedDisposable;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | /// A disposable encapsulates the work necessary to tear down and cleanup a
16 | /// subscription.
17 | @interface RACDisposable : NSObject
18 |
19 | /// Whether the receiver has been disposed.
20 | ///
21 | /// Use of this property is discouraged, since it may be set to `YES`
22 | /// concurrently at any time.
23 | ///
24 | /// This property is not KVO-compliant.
25 | @property (atomic, assign, getter = isDisposed, readonly) BOOL disposed;
26 |
27 | + (instancetype)disposableWithBlock:(void (^)(void))block;
28 |
29 | /// Performs the disposal work. Can be called multiple times, though subsequent
30 | /// calls won't do anything.
31 | - (void)dispose;
32 |
33 | /// Returns a new disposable which will dispose of this disposable when it gets
34 | /// dealloc'd.
35 | - (RACScopedDisposable *)asScopedDisposable;
36 |
37 | @end
38 |
39 | NS_ASSUME_NONNULL_END
40 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACDynamicSequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACDynamicSequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | // Private class that implements a sequence dynamically using blocks.
12 | @interface RACDynamicSequence : RACSequence
13 |
14 | // Returns a sequence which evaluates `dependencyBlock` only once, the first
15 | // time either `headBlock` or `tailBlock` is evaluated. The result of
16 | // `dependencyBlock` will be passed into `headBlock` and `tailBlock` when
17 | // invoked.
18 | + (RACSequence *)sequenceWithLazyDependency:(id (^)(void))dependencyBlock headBlock:(id (^)(id dependency))headBlock tailBlock:(RACSequence *(^)(id dependency))tailBlock;
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACDynamicSignal.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACDynamicSignal.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-10-10.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSignal.h"
10 |
11 | // A private `RACSignal` subclasses that implements its subscription behavior
12 | // using a block.
13 | @interface RACDynamicSignal : RACSignal
14 |
15 | + (RACSignal *)createSignal:(RACDisposable * (^)(id subscriber))didSubscribe;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACEagerSequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACEagerSequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 02/01/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACArraySequence.h"
10 |
11 | // Private class that implements an eager sequence.
12 | @interface RACEagerSequence : RACArraySequence
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACEmptySequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACEmptySequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | // Private class representing an empty sequence.
12 | @interface RACEmptySequence : RACSequence
13 |
14 | + (RACEmptySequence *)empty;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACEmptySignal.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACEmptySignal.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-10-10.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSignal.h"
10 |
11 | // A private `RACSignal` subclasses that synchronously sends completed to any
12 | // subscribers.
13 | @interface RACEmptySignal : RACSignal
14 |
15 | + (RACSignal *)empty;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACEmptySignal.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACEmptySignal.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-10-10.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACEmptySignal.h"
10 | #import "RACScheduler+Private.h"
11 | #import "RACSubscriber.h"
12 |
13 | @implementation RACEmptySignal
14 |
15 | #pragma mark Properties
16 |
17 | // Only allow this signal's name to be customized in DEBUG, since it's
18 | // a singleton in release builds (see +empty).
19 | - (void)setName:(NSString *)name {
20 | #ifdef DEBUG
21 | [super setName:name];
22 | #endif
23 | }
24 |
25 | - (NSString *)name {
26 | #ifdef DEBUG
27 | return super.name;
28 | #else
29 | return @"+empty";
30 | #endif
31 | }
32 |
33 | #pragma mark Lifecycle
34 |
35 | + (RACSignal *)empty {
36 | #ifdef DEBUG
37 | // Create multiple instances of this class in DEBUG so users can set custom
38 | // names on each.
39 | return [[[self alloc] init] setNameWithFormat:@"+empty"];
40 | #else
41 | static id singleton;
42 | static dispatch_once_t pred;
43 |
44 | dispatch_once(&pred, ^{
45 | singleton = [[self alloc] init];
46 | });
47 |
48 | return singleton;
49 | #endif
50 | }
51 |
52 | #pragma mark Subscription
53 |
54 | - (RACDisposable *)subscribe:(id)subscriber {
55 | NSCParameterAssert(subscriber != nil);
56 |
57 | return [RACScheduler.subscriptionScheduler schedule:^{
58 | [subscriber sendCompleted];
59 | }];
60 | }
61 |
62 | @end
63 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACErrorSignal.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACErrorSignal.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-10-10.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSignal.h"
10 |
11 | // A private `RACSignal` subclasses that synchronously sends an error to any
12 | // subscribers.
13 | @interface RACErrorSignal : RACSignal
14 |
15 | + (RACSignal *)error:(NSError *)error;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACErrorSignal.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACErrorSignal.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-10-10.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACErrorSignal.h"
10 | #import "RACScheduler+Private.h"
11 | #import "RACSubscriber.h"
12 |
13 | @interface RACErrorSignal ()
14 |
15 | // The error to send upon subscription.
16 | @property (nonatomic, strong, readonly) NSError *error;
17 |
18 | @end
19 |
20 | @implementation RACErrorSignal
21 |
22 | #pragma mark Lifecycle
23 |
24 | + (RACSignal *)error:(NSError *)error {
25 | RACErrorSignal *signal = [[self alloc] init];
26 | signal->_error = error;
27 |
28 | #ifdef DEBUG
29 | [signal setNameWithFormat:@"+error: %@", error];
30 | #else
31 | signal.name = @"+error:";
32 | #endif
33 |
34 | return signal;
35 | }
36 |
37 | #pragma mark Subscription
38 |
39 | - (RACDisposable *)subscribe:(id)subscriber {
40 | NSCParameterAssert(subscriber != nil);
41 |
42 | return [RACScheduler.subscriptionScheduler schedule:^{
43 | [subscriber sendError:self.error];
44 | }];
45 | }
46 |
47 | @end
48 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACGroupedSignal.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACGroupedSignal.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/2/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSubject.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// A grouped signal is used by -[RACSignal groupBy:transform:].
14 | @interface RACGroupedSignal : RACSubject
15 |
16 | /// The key shared by the group.
17 | @property (nonatomic, readonly, copy) id key;
18 |
19 | + (instancetype)signalWithKey:(id)key;
20 |
21 | @end
22 |
23 | NS_ASSUME_NONNULL_END
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACGroupedSignal.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACGroupedSignal.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 5/2/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACGroupedSignal.h"
10 |
11 | @interface RACGroupedSignal ()
12 | @property (nonatomic, copy) id key;
13 | @end
14 |
15 | @implementation RACGroupedSignal
16 |
17 | #pragma mark API
18 |
19 | + (instancetype)signalWithKey:(id)key {
20 | RACGroupedSignal *subject = [self subject];
21 | subject.key = key;
22 | return subject;
23 | }
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACImmediateScheduler.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACImmediateScheduler.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 11/30/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACScheduler.h"
10 |
11 | // A private scheduler which immediately executes its scheduled blocks.
12 | @interface RACImmediateScheduler : RACScheduler
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACImmediateScheduler.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACImmediateScheduler.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 11/30/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACImmediateScheduler.h"
10 | #import "RACScheduler+Private.h"
11 |
12 | @implementation RACImmediateScheduler
13 |
14 | #pragma mark Lifecycle
15 |
16 | - (instancetype)init {
17 | return [super initWithName:@"org.reactivecocoa.ReactiveObjC.RACScheduler.immediateScheduler"];
18 | }
19 |
20 | #pragma mark RACScheduler
21 |
22 | - (RACDisposable *)schedule:(void (^)(void))block {
23 | NSCParameterAssert(block != NULL);
24 |
25 | block();
26 | return nil;
27 | }
28 |
29 | - (RACDisposable *)after:(NSDate *)date schedule:(void (^)(void))block {
30 | NSCParameterAssert(date != nil);
31 | NSCParameterAssert(block != NULL);
32 |
33 | [NSThread sleepUntilDate:date];
34 | block();
35 |
36 | return nil;
37 | }
38 |
39 | - (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block {
40 | NSCAssert(NO, @"+[RACScheduler immediateScheduler] does not support %@.", NSStringFromSelector(_cmd));
41 | return nil;
42 | }
43 |
44 | - (RACDisposable *)scheduleRecursiveBlock:(RACSchedulerRecursiveBlock)recursiveBlock {
45 | for (__block NSUInteger remaining = 1; remaining > 0; remaining--) {
46 | recursiveBlock(^{
47 | remaining++;
48 | });
49 | }
50 |
51 | return nil;
52 | }
53 |
54 | @end
55 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACIndexSetSequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACIndexSetSequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Sergey Gavrilyuk on 12/18/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | // Private class that adapts an array to the RACSequence interface.
12 | @interface RACIndexSetSequence : RACSequence
13 |
14 | + (RACSequence *)sequenceWithIndexSet:(NSIndexSet *)indexSet;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACKVOProxy.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACKVOProxy.h
3 | // ReactiveObjC
4 | //
5 | // Created by Richard Speyer on 4/10/14.
6 | // Copyright (c) 2014 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | /// A singleton that can act as a proxy between a KVO observation and a RAC
12 | /// subscriber, in order to protect against KVO lifetime issues.
13 | @interface RACKVOProxy : NSObject
14 |
15 | /// Returns the singleton KVO proxy object.
16 | + (instancetype)sharedProxy;
17 |
18 | /// Registers an observer with the proxy, such that when the proxy receives a
19 | /// KVO change with the given context, it forwards it to the observer.
20 | ///
21 | /// observer - True observer of the KVO change. Must not be nil.
22 | /// context - Arbitrary context object used to differentiate multiple
23 | /// observations of the same keypath. Must be unique, cannot be nil.
24 | - (void)addObserver:(__weak NSObject *)observer forContext:(void *)context;
25 |
26 | /// Removes an observer from the proxy. Parameters must match those passed to
27 | /// addObserver:forContext:.
28 | ///
29 | /// observer - True observer of the KVO change. Must not be nil.
30 | /// context - Arbitrary context object used to differentiate multiple
31 | /// observations of the same keypath. Must be unique, cannot be nil.
32 | - (void)removeObserver:(NSObject *)observer forContext:(void *)context;
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACKVOTrampoline.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACKVOTrampoline.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 1/15/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "NSObject+RACKVOWrapper.h"
11 | #import "RACDisposable.h"
12 |
13 | // A private trampoline object that represents a KVO observation.
14 | //
15 | // Disposing of the trampoline will stop observation.
16 | @interface RACKVOTrampoline : RACDisposable
17 |
18 | // Initializes the receiver with the given parameters.
19 | //
20 | // target - The object whose key path should be observed. Cannot be nil.
21 | // observer - The object that gets notified when the value at the key path
22 | // changes. Can be nil.
23 | // keyPath - The key path on `target` to observe. Cannot be nil.
24 | // options - Any key value observing options to use in the observation.
25 | // block - The block to call when the value at the observed key path changes.
26 | // Cannot be nil.
27 | //
28 | // Returns the initialized object.
29 | - (instancetype)initWithTarget:(__weak NSObject *)target observer:(__weak NSObject *)observer keyPath:(NSString *)keyPath options:(NSKeyValueObservingOptions)options block:(RACKVOBlock)block;
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACMulticastConnection+Private.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACMulticastConnection+Private.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 4/11/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACMulticastConnection.h"
10 |
11 | @class RACSubject;
12 |
13 | @interface RACMulticastConnection ()
14 |
15 | - (instancetype)initWithSourceSignal:(RACSignal *)source subject:(RACSubject *)subject;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACPassthroughSubscriber.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACPassthroughSubscriber.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-06-13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "RACSubscriber.h"
11 |
12 | @class RACCompoundDisposable;
13 | @class RACSignal<__covariant ValueType>;
14 |
15 | // A private subscriber that passes through all events to another subscriber
16 | // while not disposed.
17 | @interface RACPassthroughSubscriber : NSObject
18 |
19 | // Initializes the receiver to pass through events until disposed.
20 | //
21 | // subscriber - The subscriber to forward events to. This must not be nil.
22 | // signal - The signal that will be sending events to the receiver.
23 | // disposable - When this disposable is disposed, no more events will be
24 | // forwarded. This must not be nil.
25 | //
26 | // Returns an initialized passthrough subscriber.
27 | - (instancetype)initWithSubscriber:(id)subscriber signal:(RACSignal *)signal disposable:(RACCompoundDisposable *)disposable;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACQueueScheduler.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACQueueScheduler.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 11/30/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACScheduler.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// An abstract scheduler which asynchronously enqueues all its work to a Grand
14 | /// Central Dispatch queue.
15 | ///
16 | /// Because RACQueueScheduler is abstract, it should not be instantiated
17 | /// directly. Create a subclass using the `RACQueueScheduler+Subclass.h`
18 | /// interface and use that instead.
19 | @interface RACQueueScheduler : RACScheduler
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACReplaySubject.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACReplaySubject.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/14/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSubject.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | extern const NSUInteger RACReplaySubjectUnlimitedCapacity;
14 |
15 | /// A replay subject saves the values it is sent (up to its defined capacity)
16 | /// and resends those to new subscribers. It will also replay an error or
17 | /// completion.
18 | @interface RACReplaySubject : RACSubject
19 |
20 | /// Creates a new replay subject with the given capacity. A capacity of
21 | /// RACReplaySubjectUnlimitedCapacity means values are never trimmed.
22 | + (instancetype)replaySubjectWithCapacity:(NSUInteger)capacity;
23 |
24 | @end
25 |
26 | NS_ASSUME_NONNULL_END
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACReturnSignal.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACReturnSignal.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-10-10.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSignal.h"
10 |
11 | // A private `RACSignal` subclasses that synchronously sends a value to any
12 | // subscribers, then completes.
13 | @interface RACReturnSignal : RACSignal
14 |
15 | + (RACSignal *)return:(id)value;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACScheduler+Private.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACScheduler+Private.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 11/29/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACScheduler.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | // The thread-specific current scheduler key.
14 | extern NSString * const RACSchedulerCurrentSchedulerKey;
15 |
16 | // A private interface for internal RAC use only.
17 | @interface RACScheduler ()
18 |
19 | // A dedicated scheduler that fills two requirements:
20 | //
21 | // 1. By the time subscription happens, we need a valid +currentScheduler.
22 | // 2. Subscription should happen as soon as possible.
23 | //
24 | // To fulfill those two, if we already have a valid +currentScheduler, it
25 | // immediately executes scheduled blocks. If we don't, it will execute scheduled
26 | // blocks with a private background scheduler.
27 | + (instancetype)subscriptionScheduler;
28 |
29 | // Initializes the receiver with the given name.
30 | //
31 | // name - The name of the scheduler. If nil, a default name will be used.
32 | //
33 | // Returns the initialized object.
34 | - (instancetype)initWithName:(nullable NSString *)name;
35 |
36 | @end
37 |
38 | NS_ASSUME_NONNULL_END
39 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACScheduler+Subclass.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACScheduler.m
3 | // ReactiveObjC
4 | //
5 | // Created by Miķelis Vindavs on 5/27/14.
6 | // Copyright (c) 2014 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "RACScheduler.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | /// An interface for use by subclasses.
15 | ///
16 | /// Subclasses should use `-performAsCurrentScheduler:` to do the actual block
17 | /// invocation so that +[RACScheduler currentScheduler] behaves as expected.
18 | ///
19 | /// **Note that RACSchedulers are expected to be serial**. Subclasses must honor
20 | /// that contract. See `RACTargetQueueScheduler` for a queue-based scheduler
21 | /// which will enforce the serialization guarantee.
22 | @interface RACScheduler ()
23 |
24 | /// Performs the given block with the receiver as the current scheduler for
25 | /// its thread. This should only be called by subclasses to perform their
26 | /// scheduled blocks.
27 | ///
28 | /// block - The block to execute. Cannot be NULL.
29 | - (void)performAsCurrentScheduler:(void (^)(void))block;
30 |
31 | @end
32 |
33 | NS_ASSUME_NONNULL_END
34 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACScopedDisposable.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACScopedDisposable.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/28/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACDisposable.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// A disposable that calls its own -dispose when it is dealloc'd.
14 | @interface RACScopedDisposable : RACDisposable
15 |
16 | /// Creates a new scoped disposable that will also dispose of the given
17 | /// disposable when it is dealloc'd.
18 | + (instancetype)scopedDisposableWithDisposable:(RACDisposable *)disposable;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACScopedDisposable.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACScopedDisposable.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/28/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACScopedDisposable.h"
10 |
11 | @implementation RACScopedDisposable
12 |
13 | #pragma mark Lifecycle
14 |
15 | + (instancetype)scopedDisposableWithDisposable:(RACDisposable *)disposable {
16 | return [self disposableWithBlock:^{
17 | [disposable dispose];
18 | }];
19 | }
20 |
21 | - (void)dealloc {
22 | [self dispose];
23 | }
24 |
25 | #pragma mark RACDisposable
26 |
27 | - (RACScopedDisposable *)asScopedDisposable {
28 | // totally already are
29 | return self;
30 | }
31 |
32 | @end
33 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACSignalProvider.d:
--------------------------------------------------------------------------------
1 | provider RACSignal {
2 | probe next(char *signal, char *subscriber, char *valueDescription);
3 | probe completed(char *signal, char *subscriber);
4 | probe error(char *signal, char *subscriber, char *errorDescription);
5 | };
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACSignalSequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACSignalSequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-11-09.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | @class RACSignal<__covariant ValueType>;
12 |
13 | // Private class that adapts a RACSignal to the RACSequence interface.
14 | @interface RACSignalSequence : RACSequence
15 |
16 | // Returns a sequence for enumerating over the given signal.
17 | + (RACSequence *)sequenceWithSignal:(RACSignal *)signal;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACStream+Private.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACStream+Private.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-07-22.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACStream.h"
10 |
11 | @interface RACStream ()
12 |
13 | // Combines a list of streams using the logic of the given block.
14 | //
15 | // streams - The streams to combine.
16 | // block - An operator that combines two streams and returns a new one. The
17 | // returned stream should contain 2-tuples of the streams' combined
18 | // values.
19 | //
20 | // Returns a combined stream.
21 | + (__kindof RACStream *)join:(id)streams block:(RACStream * (^)(id, id))block;
22 |
23 | @end
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACStringSequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACStringSequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2012-10-29.
6 | // Copyright (c) 2012 GitHub. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | // Private class that adapts a string to the RACSequence interface.
12 | @interface RACStringSequence : RACSequence
13 |
14 | // Returns a sequence for enumerating over the given string, starting from the
15 | // given character offset. The string will be copied to prevent mutation.
16 | + (RACSequence *)sequenceWithString:(NSString *)string offset:(NSUInteger)offset;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACSubject.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACSubject.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/9/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSignal.h"
10 | #import "RACSubscriber.h"
11 |
12 | NS_ASSUME_NONNULL_BEGIN
13 |
14 | /// A subject can be thought of as a signal that you can manually control by
15 | /// sending next, completed, and error.
16 | ///
17 | /// They're most helpful in bridging the non-RAC world to RAC, since they let you
18 | /// manually control the sending of events.
19 | @interface RACSubject : RACSignal
20 |
21 | /// Returns a new subject.
22 | + (instancetype)subject;
23 |
24 | @end
25 |
26 | NS_ASSUME_NONNULL_END
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACSubscriber+Private.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACSubscriber+Private.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-06-13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSubscriber.h"
10 |
11 | // A simple block-based subscriber.
12 | @interface RACSubscriber : NSObject
13 |
14 | // Creates a new subscriber with the given blocks.
15 | + (instancetype)subscriberWithNext:(void (^)(id x))next error:(void (^)(NSError *error))error completed:(void (^)(void))completed;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACSubscriptingAssignmentTrampoline.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACSubscriptingAssignmentTrampoline.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 9/24/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSubscriptingAssignmentTrampoline.h"
10 | #import "RACSignal+Operations.h"
11 |
12 | @interface RACSubscriptingAssignmentTrampoline ()
13 |
14 | // The object to bind to.
15 | @property (nonatomic, strong, readonly) id target;
16 |
17 | // A value to use when `nil` is sent on the bound signal.
18 | @property (nonatomic, strong, readonly) id nilValue;
19 |
20 | @end
21 |
22 | @implementation RACSubscriptingAssignmentTrampoline
23 |
24 | - (instancetype)initWithTarget:(id)target nilValue:(id)nilValue {
25 | // This is often a programmer error, but this prevents crashes if the target
26 | // object has unexpectedly deallocated.
27 | if (target == nil) return nil;
28 |
29 | self = [super init];
30 | if (self == nil) return nil;
31 |
32 | _target = target;
33 | _nilValue = nilValue;
34 |
35 | return self;
36 | }
37 |
38 | - (void)setObject:(RACSignal *)signal forKeyedSubscript:(NSString *)keyPath {
39 | [signal setKeyPath:keyPath onObject:self.target nilValue:self.nilValue];
40 | }
41 |
42 | @end
43 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACSubscriptionScheduler.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACSubscriptionScheduler.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 11/30/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACScheduler.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | // A private scheduler used only for subscriptions. See the private
14 | // +[RACScheduler subscriptionScheduler] method for more information.
15 | @interface RACSubscriptionScheduler : RACScheduler
16 |
17 | @end
18 |
19 | NS_ASSUME_NONNULL_END
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACTargetQueueScheduler.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACTargetQueueScheduler.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 6/6/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACQueueScheduler.h"
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// A scheduler that enqueues blocks on a private serial queue, targeting an
14 | /// arbitrary GCD queue.
15 | @interface RACTargetQueueScheduler : RACQueueScheduler
16 |
17 | /// Initializes the receiver with a serial queue that will target the given
18 | /// `targetQueue`.
19 | ///
20 | /// name - The name of the scheduler. If nil, a default name will be used.
21 | /// targetQueue - The queue to target. Cannot be NULL.
22 | ///
23 | /// Returns the initialized object.
24 | - (instancetype)initWithName:(nullable NSString *)name targetQueue:(dispatch_queue_t)targetQueue;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACTargetQueueScheduler.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACTargetQueueScheduler.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 6/6/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACTargetQueueScheduler.h"
10 | #import "RACQueueScheduler+Subclass.h"
11 |
12 | @implementation RACTargetQueueScheduler
13 |
14 | #pragma mark Lifecycle
15 |
16 | - (instancetype)initWithName:(NSString *)name targetQueue:(dispatch_queue_t)targetQueue {
17 | NSCParameterAssert(targetQueue != NULL);
18 |
19 | if (name == nil) {
20 | name = [NSString stringWithFormat:@"org.reactivecocoa.ReactiveObjC.RACTargetQueueScheduler(%s)", dispatch_queue_get_label(targetQueue)];
21 | }
22 |
23 | dispatch_queue_t queue = dispatch_queue_create(name.UTF8String, DISPATCH_QUEUE_SERIAL);
24 | if (queue == NULL) return nil;
25 |
26 | dispatch_set_target_queue(queue, targetQueue);
27 |
28 | return [super initWithName:name queue:queue];
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACTupleSequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACTupleSequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-05-01.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | // Private class that adapts a RACTuple to the RACSequence interface.
12 | @interface RACTupleSequence : RACSequence
13 |
14 | // Returns a sequence for enumerating over the given backing array (from a
15 | // RACTuple), starting from the given offset.
16 | + (RACSequence *)sequenceWithTupleBackingArray:(NSArray *)backingArray offset:(NSUInteger)offset;
17 |
18 | @end
19 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACUnarySequence.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACUnarySequence.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-05-01.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACSequence.h"
10 |
11 | // Private class representing a sequence of exactly one value.
12 | @interface RACUnarySequence : RACSequence
13 |
14 | + (RACUnarySequence *)return:(id)value;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACUnit.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACUnit.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/27/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// A unit represents an empty value.
14 | ///
15 | /// It should never be necessary to create a unit yourself. Just use +defaultUnit.
16 | @interface RACUnit : NSObject
17 |
18 | /// A singleton instance.
19 | + (RACUnit *)defaultUnit;
20 |
21 | @end
22 |
23 | NS_ASSUME_NONNULL_END
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACUnit.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACUnit.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/27/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACUnit.h"
10 |
11 | @implementation RACUnit
12 |
13 | #pragma mark API
14 |
15 | + (RACUnit *)defaultUnit {
16 | static dispatch_once_t onceToken;
17 | static RACUnit *defaultUnit = nil;
18 | dispatch_once(&onceToken, ^{
19 | defaultUnit = [[self alloc] init];
20 | });
21 |
22 | return defaultUnit;
23 | }
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACValueTransformer.h:
--------------------------------------------------------------------------------
1 | //
2 | // RACValueTransformer.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/6/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | // A private block based transformer.
12 | @interface RACValueTransformer : NSValueTransformer
13 |
14 | + (instancetype)transformerWithBlock:(id (^)(id value))block;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/RACValueTransformer.m:
--------------------------------------------------------------------------------
1 | //
2 | // RACValueTransformer.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 3/6/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "RACValueTransformer.h"
10 |
11 | @interface RACValueTransformer ()
12 | @property (nonatomic, copy) id (^transformBlock)(id value);
13 | @end
14 |
15 |
16 | @implementation RACValueTransformer
17 |
18 |
19 | #pragma mark NSValueTransformer
20 |
21 | + (BOOL)allowsReverseTransformation {
22 | return NO;
23 | }
24 |
25 | - (id)transformedValue:(id)value {
26 | return self.transformBlock(value);
27 | }
28 |
29 |
30 | #pragma mark API
31 |
32 | @synthesize transformBlock;
33 |
34 | + (instancetype)transformerWithBlock:(id (^)(id value))block {
35 | NSCParameterAssert(block != NULL);
36 |
37 | RACValueTransformer *transformer = [[self alloc] init];
38 | transformer.transformBlock = block;
39 | return transformer;
40 | }
41 |
42 | @end
43 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIActionSheet+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIActionSheet+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Dave Lee on 2013-06-22.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACDelegateProxy;
12 | @class RACSignal<__covariant ValueType>;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface UIActionSheet (RACSignalSupport)
17 |
18 | /// A delegate proxy which will be set as the receiver's delegate when any of the
19 | /// methods in this category are used.
20 | @property (nonatomic, strong, readonly) RACDelegateProxy *rac_delegateProxy;
21 |
22 | /// Creates a signal for button clicks on the receiver.
23 | ///
24 | /// When this method is invoked, the `rac_delegateProxy` will become the
25 | /// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy
26 | /// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't
27 | /// know how to handle. Setting the receiver's `delegate` afterward is
28 | /// considered undefined behavior.
29 | ///
30 | /// Returns a signal which will send the index of the specific button clicked.
31 | /// The signal will complete when the receiver is deallocated.
32 | - (RACSignal *)rac_buttonClickedSignal;
33 |
34 | @end
35 |
36 | NS_ASSUME_NONNULL_END
37 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIBarButtonItem+RACCommandSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIBarButtonItem+RACCommandSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Kyle LeNeau on 3/27/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACCommand<__contravariant InputType, __covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UIBarButtonItem (RACCommandSupport)
16 |
17 | /// Sets the control's command. When the control is clicked, the command is
18 | /// executed with the sender of the event. The control's enabledness is bound
19 | /// to the command's `canExecute`.
20 | ///
21 | /// Note: this will reset the control's target and action.
22 | @property (nonatomic, strong, nullable) RACCommand<__kindof UIBarButtonItem *, id> *rac_command;
23 |
24 | @end
25 |
26 | NS_ASSUME_NONNULL_END
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIButton+RACCommandSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIButton+RACCommandSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Ash Furrow on 2013-06-06.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACCommand<__contravariant InputType, __covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UIButton (RACCommandSupport)
16 |
17 | /// Sets the button's command. When the button is clicked, the command is
18 | /// executed with the sender of the event. The button's enabledness is bound
19 | /// to the command's `canExecute`.
20 | @property (nonatomic, strong, nullable) RACCommand<__kindof UIButton *, id> *rac_command;
21 |
22 | @end
23 |
24 | NS_ASSUME_NONNULL_END
25 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UICollectionReusableView+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UICollectionReusableView+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Kent Wong on 2013-10-04.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 | @class RACUnit;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | // This category is only applicable to iOS >= 6.0.
17 | @interface UICollectionReusableView (RACSignalSupport)
18 |
19 | /// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon
20 | /// the receiver.
21 | ///
22 | /// Examples
23 | ///
24 | /// [[[self.cancelButton
25 | /// rac_signalForControlEvents:UIControlEventTouchUpInside]
26 | /// takeUntil:self.rac_prepareForReuseSignal]
27 | /// subscribeNext:^(UIButton *x) {
28 | /// // do other things
29 | /// }];
30 | @property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;
31 |
32 | @end
33 |
34 | NS_ASSUME_NONNULL_END
35 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UICollectionReusableView+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UICollectionReusableView+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Kent Wong on 2013-10-04.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UICollectionReusableView+RACSignalSupport.h"
10 | #import "NSObject+RACDescription.h"
11 | #import "NSObject+RACSelectorSignal.h"
12 | #import "RACSignal+Operations.h"
13 | #import "RACUnit.h"
14 | #import
15 |
16 | @implementation UICollectionReusableView (RACSignalSupport)
17 |
18 | - (RACSignal *)rac_prepareForReuseSignal {
19 | RACSignal *signal = objc_getAssociatedObject(self, _cmd);
20 | if (signal != nil) return signal;
21 |
22 | signal = [[[self
23 | rac_signalForSelector:@selector(prepareForReuse)]
24 | mapReplace:RACUnit.defaultUnit]
25 | setNameWithFormat:@"%@ -rac_prepareForReuseSignal", RACDescription(self)];
26 |
27 | objc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
28 | return signal;
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIControl+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIControl+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 4/17/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UIControl (RACSignalSupport)
16 |
17 | /// Creates and returns a signal that sends the sender of the control event
18 | /// whenever one of the control events is triggered.
19 | - (RACSignal<__kindof UIControl *> *)rac_signalForControlEvents:(UIControlEvents)controlEvents;
20 |
21 | @end
22 |
23 | NS_ASSUME_NONNULL_END
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIControl+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UIControl+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 4/17/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UIControl+RACSignalSupport.h"
10 | #import
11 | #import "RACCompoundDisposable.h"
12 | #import "RACDisposable.h"
13 | #import "RACSignal.h"
14 | #import "RACSubscriber.h"
15 | #import "NSObject+RACDeallocating.h"
16 | #import "NSObject+RACDescription.h"
17 |
18 | @implementation UIControl (RACSignalSupport)
19 |
20 | - (RACSignal *)rac_signalForControlEvents:(UIControlEvents)controlEvents {
21 | @weakify(self);
22 |
23 | return [[RACSignal
24 | createSignal:^(id subscriber) {
25 | @strongify(self);
26 |
27 | [self addTarget:subscriber action:@selector(sendNext:) forControlEvents:controlEvents];
28 |
29 | RACDisposable *disposable = [RACDisposable disposableWithBlock:^{
30 | [subscriber sendCompleted];
31 | }];
32 | [self.rac_deallocDisposable addDisposable:disposable];
33 |
34 | return [RACDisposable disposableWithBlock:^{
35 | @strongify(self);
36 | [self.rac_deallocDisposable removeDisposable:disposable];
37 | [self removeTarget:subscriber action:@selector(sendNext:) forControlEvents:controlEvents];
38 | }];
39 | }]
40 | setNameWithFormat:@"%@ -rac_signalForControlEvents: %lx", RACDescription(self), (unsigned long)controlEvents];
41 | }
42 |
43 | @end
44 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIControl+RACSignalSupportPrivate.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIControl+RACSignalSupportPrivate.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 06/08/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 |
13 | @interface UIControl (RACSignalSupportPrivate)
14 |
15 | // Adds a RACChannel-based interface to the receiver for the given
16 | // UIControlEvents and exposes it.
17 | //
18 | // controlEvents - A mask of UIControlEvents on which to send new values.
19 | // key - The key whose value should be read and set when a control
20 | // event fires and when a value is sent to the
21 | // RACChannelTerminal respectively.
22 | // nilValue - The value to be assigned to the key when `nil` is sent to the
23 | // RACChannelTerminal.
24 | //
25 | // Returns a RACChannelTerminal which will send future values from the receiver,
26 | // and update the receiver when values are sent to the terminal.
27 | - (RACChannelTerminal *)rac_channelForControlEvents:(UIControlEvents)controlEvents key:(NSString *)key nilValue:(id)nilValue;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIDatePicker+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIDatePicker+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UIDatePicker (RACSignalSupport)
16 |
17 | /// Creates a new RACChannel-based binding to the receiver.
18 | ///
19 | /// nilValue - The date to set when the terminal receives `nil`.
20 | ///
21 | /// Returns a RACChannelTerminal that sends the receiver's date whenever the
22 | /// UIControlEventValueChanged control event is fired, and sets the date to the
23 | /// values it receives.
24 | - (RACChannelTerminal *)rac_newDateChannelWithNilValue:(nullable NSDate *)nilValue;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIDatePicker+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UIDatePicker+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UIDatePicker+RACSignalSupport.h"
10 | #import
11 | #import "UIControl+RACSignalSupportPrivate.h"
12 |
13 | @implementation UIDatePicker (RACSignalSupport)
14 |
15 | - (RACChannelTerminal *)rac_newDateChannelWithNilValue:(NSDate *)nilValue {
16 | return [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.date) nilValue:nilValue];
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIGestureRecognizer+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIGestureRecognizer+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Vera on 5/5/13.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UIGestureRecognizer (RACSignalSupport)
16 |
17 | /// Returns a signal that sends the receiver when its gesture occurs.
18 | - (RACSignal<__kindof UIGestureRecognizer *> *)rac_gestureSignal;
19 |
20 | @end
21 |
22 | NS_ASSUME_NONNULL_END
23 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIGestureRecognizer+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UIGestureRecognizer+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Vera on 5/5/13.
6 | // Copyright (c) 2013 GitHub. All rights reserved.
7 | //
8 |
9 | #import "UIGestureRecognizer+RACSignalSupport.h"
10 | #import
11 | #import "NSObject+RACDeallocating.h"
12 | #import "NSObject+RACDescription.h"
13 | #import "RACCompoundDisposable.h"
14 | #import "RACDisposable.h"
15 | #import "RACSignal.h"
16 | #import "RACSubscriber.h"
17 |
18 | @implementation UIGestureRecognizer (RACSignalSupport)
19 |
20 | - (RACSignal *)rac_gestureSignal {
21 | @weakify(self);
22 |
23 | return [[RACSignal
24 | createSignal:^(id subscriber) {
25 | @strongify(self);
26 |
27 | [self addTarget:subscriber action:@selector(sendNext:)];
28 | [self.rac_deallocDisposable addDisposable:[RACDisposable disposableWithBlock:^{
29 | [subscriber sendCompleted];
30 | }]];
31 |
32 | return [RACDisposable disposableWithBlock:^{
33 | @strongify(self);
34 | [self removeTarget:subscriber action:@selector(sendNext:)];
35 | }];
36 | }]
37 | setNameWithFormat:@"%@ -rac_gestureSignal", RACDescription(self)];
38 | }
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIImagePickerController+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIImagePickerController+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Timur Kuchkarov on 28.03.14.
6 | // Copyright (c) 2014 GitHub. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACDelegateProxy;
12 | @class RACSignal<__covariant ValueType>;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface UIImagePickerController (RACSignalSupport)
17 |
18 | /// A delegate proxy which will be set as the receiver's delegate when any of the
19 | /// methods in this category are used.
20 | @property (nonatomic, strong, readonly) RACDelegateProxy *rac_delegateProxy;
21 |
22 | /// Creates a signal for every new selected image.
23 | ///
24 | /// When this method is invoked, the `rac_delegateProxy` will become the
25 | /// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy
26 | /// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't
27 | /// know how to handle. Setting the receiver's `delegate` afterward is considered
28 | /// undefined behavior.
29 | ///
30 | /// Returns a signal which will send the dictionary with info for the selected image.
31 | /// Caller is responsible for picker controller dismissal. The signal will complete
32 | /// itself when the receiver is deallocated or when user cancels selection.
33 | - (RACSignal *)rac_imageSelectedSignal;
34 |
35 | @end
36 |
37 | NS_ASSUME_NONNULL_END
38 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIRefreshControl+RACCommandSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIRefreshControl+RACCommandSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Dave Lee on 2013-10-17.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACCommand<__contravariant InputType, __covariant ValueType>;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UIRefreshControl (RACCommandSupport)
16 |
17 | /// Manipulate the RACCommand property associated with this refresh control.
18 | ///
19 | /// When this refresh control is activated by the user, the command will be
20 | /// executed. Upon completion or error of the execution signal, -endRefreshing
21 | /// will be invoked.
22 | @property (nonatomic, strong, nullable) RACCommand<__kindof UIRefreshControl *, id> *rac_command;
23 |
24 | @end
25 |
26 | NS_ASSUME_NONNULL_END
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UISegmentedControl+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UISegmentedControl+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UISegmentedControl (RACSignalSupport)
16 |
17 | /// Creates a new RACChannel-based binding to the receiver.
18 | ///
19 | /// nilValue - The segment to select when the terminal receives `nil`.
20 | ///
21 | /// Returns a RACChannelTerminal that sends the receiver's currently selected
22 | /// segment's index whenever the UIControlEventValueChanged control event is
23 | /// fired, and sets the selected segment index to the values it receives.
24 | - (RACChannelTerminal *)rac_newSelectedSegmentIndexChannelWithNilValue:(nullable NSNumber *)nilValue;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UISegmentedControl+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UISegmentedControl+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UISegmentedControl+RACSignalSupport.h"
10 | #import
11 | #import "UIControl+RACSignalSupportPrivate.h"
12 |
13 | @implementation UISegmentedControl (RACSignalSupport)
14 |
15 | - (RACChannelTerminal *)rac_newSelectedSegmentIndexChannelWithNilValue:(NSNumber *)nilValue {
16 | return [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.selectedSegmentIndex) nilValue:nilValue];
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UISlider+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UISlider+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UISlider (RACSignalSupport)
16 |
17 | /// Creates a new RACChannel-based binding to the receiver.
18 | ///
19 | /// nilValue - The value to set when the terminal receives `nil`.
20 | ///
21 | /// Returns a RACChannelTerminal that sends the receiver's value whenever the
22 | /// UIControlEventValueChanged control event is fired, and sets the value to the
23 | /// values it receives.
24 | - (RACChannelTerminal *)rac_newValueChannelWithNilValue:(nullable NSNumber *)nilValue;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UISlider+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UISlider+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UISlider+RACSignalSupport.h"
10 | #import
11 | #import "UIControl+RACSignalSupportPrivate.h"
12 |
13 | @implementation UISlider (RACSignalSupport)
14 |
15 | - (RACChannelTerminal *)rac_newValueChannelWithNilValue:(NSNumber *)nilValue {
16 | return [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.value) nilValue:nilValue];
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIStepper+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UIStepper+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UIStepper (RACSignalSupport)
16 |
17 | /// Creates a new RACChannel-based binding to the receiver.
18 | ///
19 | /// nilValue - The value to set when the terminal receives `nil`.
20 | ///
21 | /// Returns a RACChannelTerminal that sends the receiver's value whenever the
22 | /// UIControlEventValueChanged control event is fired, and sets the value to the
23 | /// values it receives.
24 | - (RACChannelTerminal *)rac_newValueChannelWithNilValue:(nullable NSNumber *)nilValue;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UIStepper+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UIStepper+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UIStepper+RACSignalSupport.h"
10 | #import
11 | #import "UIControl+RACSignalSupportPrivate.h"
12 |
13 | @implementation UIStepper (RACSignalSupport)
14 |
15 | - (RACChannelTerminal *)rac_newValueChannelWithNilValue:(NSNumber *)nilValue {
16 | return [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.value) nilValue:nilValue];
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UISwitch+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UISwitch+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 |
13 | NS_ASSUME_NONNULL_BEGIN
14 |
15 | @interface UISwitch (RACSignalSupport)
16 |
17 | /// Creates a new RACChannel-based binding to the receiver.
18 | ///
19 | /// Returns a RACChannelTerminal that sends whether the receiver is on whenever
20 | /// the UIControlEventValueChanged control event is fired, and sets it on or off
21 | /// when it receives @YES or @NO respectively.
22 | - (RACChannelTerminal *)rac_newOnChannel;
23 |
24 | @end
25 |
26 | NS_ASSUME_NONNULL_END
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UISwitch+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UISwitch+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Uri Baghin on 20/07/2013.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UISwitch+RACSignalSupport.h"
10 | #import
11 | #import "UIControl+RACSignalSupportPrivate.h"
12 |
13 | @implementation UISwitch (RACSignalSupport)
14 |
15 | - (RACChannelTerminal *)rac_newOnChannel {
16 | return [self rac_channelForControlEvents:UIControlEventValueChanged key:@keypath(self.on) nilValue:@NO];
17 | }
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UITableViewCell+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UITableViewCell+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-07-22.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 | @class RACUnit;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface UITableViewCell (RACSignalSupport)
17 |
18 | /// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon
19 | /// the receiver.
20 | ///
21 | /// Examples
22 | ///
23 | /// [[[self.cancelButton
24 | /// rac_signalForControlEvents:UIControlEventTouchUpInside]
25 | /// takeUntil:self.rac_prepareForReuseSignal]
26 | /// subscribeNext:^(UIButton *x) {
27 | /// // do other things
28 | /// }];
29 | @property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;
30 |
31 | @end
32 |
33 | NS_ASSUME_NONNULL_END
34 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UITableViewCell+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UITableViewCell+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Justin Spahr-Summers on 2013-07-22.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UITableViewCell+RACSignalSupport.h"
10 | #import "NSObject+RACDescription.h"
11 | #import "NSObject+RACSelectorSignal.h"
12 | #import "RACSignal+Operations.h"
13 | #import "RACUnit.h"
14 | #import
15 |
16 | @implementation UITableViewCell (RACSignalSupport)
17 |
18 | - (RACSignal *)rac_prepareForReuseSignal {
19 | RACSignal *signal = objc_getAssociatedObject(self, _cmd);
20 | if (signal != nil) return signal;
21 |
22 | signal = [[[self
23 | rac_signalForSelector:@selector(prepareForReuse)]
24 | mapReplace:RACUnit.defaultUnit]
25 | setNameWithFormat:@"%@ -rac_prepareForReuseSignal", RACDescription(self)];
26 |
27 | objc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
28 | return signal;
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UITableViewHeaderFooterView+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UITableViewHeaderFooterView+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Syo Ikeda on 12/30/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACSignal<__covariant ValueType>;
12 | @class RACUnit;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | // This category is only applicable to iOS >= 6.0.
17 | @interface UITableViewHeaderFooterView (RACSignalSupport)
18 |
19 | /// A signal which will send a RACUnit whenever -prepareForReuse is invoked upon
20 | /// the receiver.
21 | ///
22 | /// Examples
23 | ///
24 | /// [[[self.cancelButton
25 | /// rac_signalForControlEvents:UIControlEventTouchUpInside]
26 | /// takeUntil:self.rac_prepareForReuseSignal]
27 | /// subscribeNext:^(UIButton *x) {
28 | /// // do other things
29 | /// }];
30 | @property (nonatomic, strong, readonly) RACSignal *rac_prepareForReuseSignal;
31 |
32 | @end
33 |
34 | NS_ASSUME_NONNULL_END
35 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UITableViewHeaderFooterView+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UITableViewHeaderFooterView+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Syo Ikeda on 12/30/13.
6 | // Copyright (c) 2013 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UITableViewHeaderFooterView+RACSignalSupport.h"
10 | #import "NSObject+RACDescription.h"
11 | #import "NSObject+RACSelectorSignal.h"
12 | #import "RACSignal+Operations.h"
13 | #import "RACUnit.h"
14 | #import
15 |
16 | @implementation UITableViewHeaderFooterView (RACSignalSupport)
17 |
18 | - (RACSignal *)rac_prepareForReuseSignal {
19 | RACSignal *signal = objc_getAssociatedObject(self, _cmd);
20 | if (signal != nil) return signal;
21 |
22 | signal = [[[self
23 | rac_signalForSelector:@selector(prepareForReuse)]
24 | mapReplace:RACUnit.defaultUnit]
25 | setNameWithFormat:@"%@ -rac_prepareForReuseSignal", RACDescription(self)];
26 |
27 | objc_setAssociatedObject(self, _cmd, signal, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
28 | return signal;
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UITextField+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UITextField+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 4/17/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACChannelTerminal;
12 | @class RACSignal<__covariant ValueType>;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface UITextField (RACSignalSupport)
17 |
18 | /// Creates and returns a signal for the text of the field. It always starts with
19 | /// the current text. The signal sends next when the UIControlEventAllEditingEvents
20 | /// control event is fired on the control.
21 | - (RACSignal *)rac_textSignal;
22 |
23 | /// Creates a new RACChannel-based binding to the receiver.
24 | ///
25 | /// Returns a RACChannelTerminal that sends the receiver's text whenever the
26 | /// UIControlEventAllEditingEvents control event is fired, and sets the text
27 | /// to the values it receives.
28 | - (RACChannelTerminal *)rac_newTextChannel;
29 |
30 | @end
31 |
32 | NS_ASSUME_NONNULL_END
33 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UITextField+RACSignalSupport.m:
--------------------------------------------------------------------------------
1 | //
2 | // UITextField+RACSignalSupport.m
3 | // ReactiveObjC
4 | //
5 | // Created by Josh Abernathy on 4/17/12.
6 | // Copyright (c) 2012 GitHub, Inc. All rights reserved.
7 | //
8 |
9 | #import "UITextField+RACSignalSupport.h"
10 | #import
11 | #import
12 | #import "NSObject+RACDeallocating.h"
13 | #import "NSObject+RACDescription.h"
14 | #import "RACSignal+Operations.h"
15 | #import "UIControl+RACSignalSupport.h"
16 | #import "UIControl+RACSignalSupportPrivate.h"
17 |
18 | @implementation UITextField (RACSignalSupport)
19 |
20 | - (RACSignal *)rac_textSignal {
21 | @weakify(self);
22 | return [[[[[RACSignal
23 | defer:^{
24 | @strongify(self);
25 | return [RACSignal return:self];
26 | }]
27 | concat:[self rac_signalForControlEvents:UIControlEventAllEditingEvents]]
28 | map:^(UITextField *x) {
29 | return x.text;
30 | }]
31 | takeUntil:self.rac_willDeallocSignal]
32 | setNameWithFormat:@"%@ -rac_textSignal", RACDescription(self)];
33 | }
34 |
35 | - (RACChannelTerminal *)rac_newTextChannel {
36 | return [self rac_channelForControlEvents:UIControlEventAllEditingEvents key:@keypath(self.text) nilValue:@""];
37 | }
38 |
39 | @end
40 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/ReactiveObjC/ReactiveObjC/UITextView+RACSignalSupport.h:
--------------------------------------------------------------------------------
1 | //
2 | // UITextView+RACSignalSupport.h
3 | // ReactiveObjC
4 | //
5 | // Created by Cody Krieger on 5/18/12.
6 | // Copyright (c) 2012 Cody Krieger. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class RACDelegateProxy;
12 | @class RACSignal<__covariant ValueType>;
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @interface UITextView (RACSignalSupport)
17 |
18 | /// A delegate proxy which will be set as the receiver's delegate when any of the
19 | /// methods in this category are used.
20 | @property (nonatomic, strong, readonly) RACDelegateProxy *rac_delegateProxy;
21 |
22 | /// Creates a signal for the text of the receiver.
23 | ///
24 | /// When this method is invoked, the `rac_delegateProxy` will become the
25 | /// receiver's delegate. Any previous delegate will become the -[RACDelegateProxy
26 | /// rac_proxiedDelegate], so that it receives any messages that the proxy doesn't
27 | /// know how to handle. Setting the receiver's `delegate` afterward is
28 | /// considered undefined behavior.
29 | ///
30 | /// Returns a signal which will send the current text upon subscription, then
31 | /// again whenever the receiver's text is changed. The signal will complete when
32 | /// the receiver is deallocated.
33 | - (RACSignal *)rac_textSignal;
34 |
35 | @end
36 |
37 | NS_ASSUME_NONNULL_END
38 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/SocketRocket/LICENSE:
--------------------------------------------------------------------------------
1 |
2 | Copyright 2012 Square Inc.
3 |
4 | Licensed under the Apache License, Version 2.0 (the "License");
5 | you may not use this file except in compliance with the License.
6 | You may obtain a copy of the License at
7 |
8 | http://www.apache.org/licenses/LICENSE-2.0
9 |
10 | Unless required by applicable law or agreed to in writing, software
11 | distributed under the License is distributed on an "AS IS" BASIS,
12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | See the License for the specific language governing permissions and
14 | limitations under the License.
15 |
16 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/SocketRocket/SocketRocket/SocketRocket.h:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright 2012 Square Inc.
3 | //
4 | // Licensed under the Apache License, Version 2.0 (the "License");
5 | // you may not use this file except in compliance with the License.
6 | // You may obtain a copy of the License at
7 | //
8 | // http://www.apache.org/licenses/LICENSE-2.0
9 | //
10 | // Unless required by applicable law or agreed to in writing, software
11 | // distributed under the License is distributed on an "AS IS" BASIS,
12 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | // See the License for the specific language governing permissions and
14 | // limitations under the License.
15 | //
16 |
17 | #import
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/CGSizeAspectRatioTool/CGSizeAspectRatioTool-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_CGSizeAspectRatioTool : NSObject
3 | @end
4 | @implementation PodsDummy_CGSizeAspectRatioTool
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/CGSizeAspectRatioTool/CGSizeAspectRatioTool-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/CGSizeAspectRatioTool/CGSizeAspectRatioTool-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "CGSizeAspectRatioTool.h"
14 |
15 | FOUNDATION_EXPORT double CGSizeAspectRatioToolVersionNumber;
16 | FOUNDATION_EXPORT const unsigned char CGSizeAspectRatioToolVersionString[];
17 |
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/CGSizeAspectRatioTool/CGSizeAspectRatioTool.modulemap:
--------------------------------------------------------------------------------
1 | framework module CGSizeAspectRatioTool {
2 | umbrella header "CGSizeAspectRatioTool-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/CGSizeAspectRatioTool/CGSizeAspectRatioTool.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/CGSizeAspectRatioTool
2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
4 | PODS_BUILD_DIR = $BUILD_DIR
5 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
6 | PODS_ROOT = ${SRCROOT}
7 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/CGSizeAspectRatioTool
8 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
9 | SKIP_INSTALL = YES
10 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/CGSizeAspectRatioTool/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/KMSClient/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.1.1
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/KMSClient/KMSClient-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_KMSClient : NSObject
3 | @end
4 | @implementation PodsDummy_KMSClient
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/KMSClient/KMSClient-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/KMSClient/KMSClient-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "KMSClient.h"
14 | #import "KMSMediaPipeline.h"
15 | #import "KMSRACSubject.h"
16 | #import "KMSSession.h"
17 | #import "KMSWebRTCEndpoint.h"
18 | #import "KMSLog.h"
19 | #import "KMSLogger.h"
20 | #import "KMSMessageFactoryMediaPipeline.h"
21 | #import "KMSMessageFactoryWebRTCEndpoint.h"
22 | #import "KMSRequestMessageFactory.h"
23 | #import "KMSConstructorParams.h"
24 | #import "KMSElementConnection.h"
25 | #import "KMSEvent.h"
26 | #import "KMSEventData.h"
27 | #import "KMSICECandidate.h"
28 | #import "KMSMessage.h"
29 | #import "KMSMessageParams.h"
30 | #import "KMSOperationParams.h"
31 | #import "KMSRequestMessage.h"
32 | #import "KMSResponseMessage.h"
33 | #import "KMSResponseMessageResult.h"
34 | #import "KMSCreationType.h"
35 | #import "KMSEventType.h"
36 | #import "KMSInvocationOperation.h"
37 | #import "KMSMediaState.h"
38 | #import "KMSMediaType.h"
39 | #import "KMSMethod.h"
40 | #import "UUID.h"
41 |
42 | FOUNDATION_EXPORT double KMSClientVersionNumber;
43 | FOUNDATION_EXPORT const unsigned char KMSClientVersionString[];
44 |
45 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/KMSClient/KMSClient.modulemap:
--------------------------------------------------------------------------------
1 | framework module KMSClient {
2 | umbrella header "KMSClient-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/KMSClient/KMSClient.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/KMSClient
2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/Mantle" "$PODS_CONFIGURATION_BUILD_DIR/MantleNullValuesOmit" "$PODS_CONFIGURATION_BUILD_DIR/NSDictionaryMerge" "$PODS_CONFIGURATION_BUILD_DIR/ReactiveObjC" "$PODS_CONFIGURATION_BUILD_DIR/SocketRocket"
3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
5 | PODS_BUILD_DIR = $BUILD_DIR
6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
7 | PODS_ROOT = ${SRCROOT}
8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/KMSClient
9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
10 | SKIP_INSTALL = YES
11 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MBProgressHUD/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 0.9.1
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MBProgressHUD/MBProgressHUD-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_MBProgressHUD : NSObject
3 | @end
4 | @implementation PodsDummy_MBProgressHUD
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MBProgressHUD/MBProgressHUD-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MBProgressHUD/MBProgressHUD-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "MBProgressHUD.h"
14 |
15 | FOUNDATION_EXPORT double MBProgressHUDVersionNumber;
16 | FOUNDATION_EXPORT const unsigned char MBProgressHUDVersionString[];
17 |
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MBProgressHUD/MBProgressHUD.modulemap:
--------------------------------------------------------------------------------
1 | framework module MBProgressHUD {
2 | umbrella header "MBProgressHUD-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MBProgressHUD/MBProgressHUD.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/MBProgressHUD
2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
4 | OTHER_LDFLAGS = -framework "CoreGraphics"
5 | PODS_BUILD_DIR = $BUILD_DIR
6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
7 | PODS_ROOT = ${SRCROOT}
8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/MBProgressHUD
9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
10 | SKIP_INSTALL = YES
11 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Mantle/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 2.1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Mantle/Mantle-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_Mantle : NSObject
3 | @end
4 | @implementation PodsDummy_Mantle
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Mantle/Mantle-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Mantle/Mantle-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "Mantle.h"
14 | #import "MTLJSONAdapter.h"
15 | #import "MTLModel+NSCoding.h"
16 | #import "MTLModel.h"
17 | #import "MTLReflection.h"
18 | #import "MTLTransformerErrorHandling.h"
19 | #import "MTLValueTransformer.h"
20 | #import "NSArray+MTLManipulationAdditions.h"
21 | #import "NSDictionary+MTLJSONKeyPath.h"
22 | #import "NSDictionary+MTLManipulationAdditions.h"
23 | #import "NSDictionary+MTLMappingAdditions.h"
24 | #import "NSError+MTLModelException.h"
25 | #import "NSObject+MTLComparisonAdditions.h"
26 | #import "NSValueTransformer+MTLInversionAdditions.h"
27 | #import "NSValueTransformer+MTLPredefinedTransformerAdditions.h"
28 |
29 | FOUNDATION_EXPORT double MantleVersionNumber;
30 | FOUNDATION_EXPORT const unsigned char MantleVersionString[];
31 |
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Mantle/Mantle.modulemap:
--------------------------------------------------------------------------------
1 | framework module Mantle {
2 | umbrella header "Mantle-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Mantle/Mantle.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/Mantle
2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
4 | OTHER_LDFLAGS = -framework "Foundation"
5 | PODS_BUILD_DIR = $BUILD_DIR
6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
7 | PODS_ROOT = ${SRCROOT}
8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/Mantle
9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
10 | SKIP_INSTALL = YES
11 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MantleNullValuesOmit/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 0.0.2
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MantleNullValuesOmit/MantleNullValuesOmit-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_MantleNullValuesOmit : NSObject
3 | @end
4 | @implementation PodsDummy_MantleNullValuesOmit
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MantleNullValuesOmit/MantleNullValuesOmit-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MantleNullValuesOmit/MantleNullValuesOmit-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "MantleNullValuesOmit.h"
14 | #import "MTLJSONAdapter+NullValuesOmit.h"
15 | #import "MTLModel+NullValuesOmit.h"
16 |
17 | FOUNDATION_EXPORT double MantleNullValuesOmitVersionNumber;
18 | FOUNDATION_EXPORT const unsigned char MantleNullValuesOmitVersionString[];
19 |
20 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MantleNullValuesOmit/MantleNullValuesOmit.modulemap:
--------------------------------------------------------------------------------
1 | framework module MantleNullValuesOmit {
2 | umbrella header "MantleNullValuesOmit-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/MantleNullValuesOmit/MantleNullValuesOmit.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/MantleNullValuesOmit
2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/Mantle"
3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
5 | PODS_BUILD_DIR = $BUILD_DIR
6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
7 | PODS_ROOT = ${SRCROOT}
8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/MantleNullValuesOmit
9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
10 | SKIP_INSTALL = YES
11 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/NSDictionaryMerge/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/NSDictionaryMerge/NSDictionaryMerge-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_NSDictionaryMerge : NSObject
3 | @end
4 | @implementation PodsDummy_NSDictionaryMerge
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/NSDictionaryMerge/NSDictionaryMerge-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/NSDictionaryMerge/NSDictionaryMerge-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "NSDictionary+Merge.h"
14 |
15 | FOUNDATION_EXPORT double NSDictionaryMergeVersionNumber;
16 | FOUNDATION_EXPORT const unsigned char NSDictionaryMergeVersionString[];
17 |
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/NSDictionaryMerge/NSDictionaryMerge.modulemap:
--------------------------------------------------------------------------------
1 | framework module NSDictionaryMerge {
2 | umbrella header "NSDictionaryMerge-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/NSDictionaryMerge/NSDictionaryMerge.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/NSDictionaryMerge
2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
4 | PODS_BUILD_DIR = $BUILD_DIR
5 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
6 | PODS_ROOT = ${SRCROOT}
7 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/NSDictionaryMerge
8 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
9 | SKIP_INSTALL = YES
10 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-KMSWebRTC/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-KMSWebRTC/Pods-KMSWebRTC-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_Pods_KMSWebRTC : NSObject
3 | @end
4 | @implementation PodsDummy_Pods_KMSWebRTC
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-KMSWebRTC/Pods-KMSWebRTC-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
14 | FOUNDATION_EXPORT double Pods_KMSWebRTCVersionNumber;
15 | FOUNDATION_EXPORT const unsigned char Pods_KMSWebRTCVersionString[];
16 |
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-KMSWebRTC/Pods-KMSWebRTC.modulemap:
--------------------------------------------------------------------------------
1 | framework module Pods_KMSWebRTC {
2 | umbrella header "Pods-KMSWebRTC-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-LoopBackCall/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-LoopBackCall/Pods-LoopBackCall-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_Pods_LoopBackCall : NSObject
3 | @end
4 | @implementation PodsDummy_Pods_LoopBackCall
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-LoopBackCall/Pods-LoopBackCall-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
14 | FOUNDATION_EXPORT double Pods_LoopBackCallVersionNumber;
15 | FOUNDATION_EXPORT const unsigned char Pods_LoopBackCallVersionString[];
16 |
17 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/Pods-LoopBackCall/Pods-LoopBackCall.modulemap:
--------------------------------------------------------------------------------
1 | framework module Pods_LoopBackCall {
2 | umbrella header "Pods-LoopBackCall-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/ReactiveObjC/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 2.1.2
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/ReactiveObjC/ReactiveObjC-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_ReactiveObjC : NSObject
3 | @end
4 | @implementation PodsDummy_ReactiveObjC
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/ReactiveObjC/ReactiveObjC-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/ReactiveObjC/ReactiveObjC.modulemap:
--------------------------------------------------------------------------------
1 | framework module ReactiveObjC {
2 | umbrella header "ReactiveObjC-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/ReactiveObjC/ReactiveObjC.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/ReactiveObjC
2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
4 | OTHER_LDFLAGS = -framework "Foundation"
5 | PODS_BUILD_DIR = $BUILD_DIR
6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
7 | PODS_ROOT = ${SRCROOT}
8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/ReactiveObjC
9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
10 | SKIP_INSTALL = YES
11 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/SocketRocket/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 0.5.1
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/SocketRocket/SocketRocket-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_SocketRocket : NSObject
3 | @end
4 | @implementation PodsDummy_SocketRocket
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/SocketRocket/SocketRocket-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/SocketRocket/SocketRocket-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "SocketRocket.h"
14 | #import "SRWebSocket.h"
15 |
16 | FOUNDATION_EXPORT double SocketRocketVersionNumber;
17 | FOUNDATION_EXPORT const unsigned char SocketRocketVersionString[];
18 |
19 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/SocketRocket/SocketRocket.modulemap:
--------------------------------------------------------------------------------
1 | framework module SocketRocket {
2 | umbrella header "SocketRocket-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/SocketRocket/SocketRocket.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/SocketRocket
2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
4 | OTHER_LDFLAGS = -l"icucore" -framework "CFNetwork" -framework "Security"
5 | PODS_BUILD_DIR = $BUILD_DIR
6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
7 | PODS_ROOT = ${SRCROOT}
8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/SocketRocket
9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
10 | SKIP_INSTALL = YES
11 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/UIImage+Additions/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | ${PRODUCT_BUNDLE_IDENTIFIER}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | ${PRODUCT_NAME}
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 2.1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | ${CURRENT_PROJECT_VERSION}
23 | NSPrincipalClass
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/UIImage+Additions/UIImage+Additions-dummy.m:
--------------------------------------------------------------------------------
1 | #import
2 | @interface PodsDummy_UIImage_Additions : NSObject
3 | @end
4 | @implementation PodsDummy_UIImage_Additions
5 | @end
6 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/UIImage+Additions/UIImage+Additions-prefix.pch:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/UIImage+Additions/UIImage+Additions-umbrella.h:
--------------------------------------------------------------------------------
1 | #ifdef __OBJC__
2 | #import
3 | #else
4 | #ifndef FOUNDATION_EXPORT
5 | #if defined(__cplusplus)
6 | #define FOUNDATION_EXPORT extern "C"
7 | #else
8 | #define FOUNDATION_EXPORT extern
9 | #endif
10 | #endif
11 | #endif
12 |
13 | #import "UIImage+Additions.h"
14 |
15 | FOUNDATION_EXPORT double UIImage_AdditionsVersionNumber;
16 | FOUNDATION_EXPORT const unsigned char UIImage_AdditionsVersionString[];
17 |
18 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/UIImage+Additions/UIImage+Additions.modulemap:
--------------------------------------------------------------------------------
1 | framework module UIImage_Additions {
2 | umbrella header "UIImage+Additions-umbrella.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/Target Support Files/UIImage+Additions/UIImage+Additions.xcconfig:
--------------------------------------------------------------------------------
1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/UIImage+Additions
2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/WebRTC"
4 | OTHER_LDFLAGS = -framework "UIKit"
5 | PODS_BUILD_DIR = $BUILD_DIR
6 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
7 | PODS_ROOT = ${SRCROOT}
8 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/UIImage+Additions
9 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
10 | SKIP_INSTALL = YES
11 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/UIImage+Additions/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2013 Joan Martin, vilanovi@gmail.com.
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4 |
5 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6 |
7 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCAudioSource.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 | #import
15 |
16 | NS_ASSUME_NONNULL_BEGIN
17 |
18 | RTC_EXPORT
19 | @interface RTCAudioSource : RTCMediaSource
20 |
21 | - (instancetype)init NS_UNAVAILABLE;
22 |
23 | @end
24 |
25 | NS_ASSUME_NONNULL_END
26 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCAudioTrack.h:
--------------------------------------------------------------------------------
1 | /*
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
12 | #import
13 |
14 | NS_ASSUME_NONNULL_BEGIN
15 |
16 | @class RTCAudioSource;
17 |
18 | RTC_EXPORT
19 | @interface RTCAudioTrack : RTCMediaStreamTrack
20 |
21 | - (instancetype)init NS_UNAVAILABLE;
22 |
23 | /** The audio source for this audio track. */
24 | @property(nonatomic, readonly) RTCAudioSource *source;
25 |
26 | @end
27 |
28 | NS_ASSUME_NONNULL_END
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCCameraPreviewView.h:
--------------------------------------------------------------------------------
1 | /*
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
12 | #import
13 |
14 | #import
15 |
16 | @class AVCaptureSession;
17 | @class RTCAVFoundationVideoSource;
18 |
19 | /** RTCCameraPreviewView is a view that renders local video from an
20 | * AVCaptureSession.
21 | */
22 | RTC_EXPORT
23 | @interface RTCCameraPreviewView : UIView
24 |
25 | /** The capture session being rendered in the view. Capture session
26 | * is assigned to AVCaptureVideoPreviewLayer async in the same
27 | * queue that the AVCaptureSession is started/stopped.
28 | */
29 | @property(nonatomic, strong) AVCaptureSession *captureSession;
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCDispatcher.h:
--------------------------------------------------------------------------------
1 | /*
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
12 |
13 | #import
14 |
15 | typedef NS_ENUM(NSInteger, RTCDispatcherQueueType) {
16 | // Main dispatcher queue.
17 | RTCDispatcherTypeMain,
18 | // Used for starting/stopping AVCaptureSession, and assigning
19 | // capture session to AVCaptureVideoPreviewLayer.
20 | RTCDispatcherTypeCaptureSession,
21 | // Used for operations on AVAudioSession.
22 | RTCDispatcherTypeAudioSession,
23 | };
24 |
25 | /** Dispatcher that asynchronously dispatches blocks to a specific
26 | * shared dispatch queue.
27 | */
28 | RTC_EXPORT
29 | @interface RTCDispatcher : NSObject
30 |
31 | - (instancetype)init NS_UNAVAILABLE;
32 |
33 | /** Dispatch the block asynchronously on the queue for dispatchType.
34 | * @param dispatchType The queue type to dispatch on.
35 | * @param block The block to dispatch asynchronously.
36 | */
37 | + (void)dispatchAsyncOnType:(RTCDispatcherQueueType)dispatchType
38 | block:(dispatch_block_t)block;
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCEAGLVideoView.h:
--------------------------------------------------------------------------------
1 | /*
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
12 | #import
13 |
14 | #import
15 | #import
16 |
17 | NS_ASSUME_NONNULL_BEGIN
18 |
19 | @class RTCEAGLVideoView;
20 | RTC_EXPORT
21 | @protocol RTCEAGLVideoViewDelegate
22 |
23 | - (void)videoView:(RTCEAGLVideoView *)videoView didChangeVideoSize:(CGSize)size;
24 |
25 | @end
26 |
27 | /**
28 | * RTCEAGLVideoView is an RTCVideoRenderer which renders video frames in its
29 | * bounds using OpenGLES 2.0.
30 | */
31 | RTC_EXPORT
32 | @interface RTCEAGLVideoView : UIView
33 |
34 | @property(nonatomic, weak) id delegate;
35 |
36 | @end
37 |
38 | NS_ASSUME_NONNULL_END
39 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCIceCandidate.h:
--------------------------------------------------------------------------------
1 | /*
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
12 |
13 | #import
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | RTC_EXPORT
18 | @interface RTCIceCandidate : NSObject
19 |
20 | /**
21 | * If present, the identifier of the "media stream identification" for the media
22 | * component this candidate is associated with.
23 | */
24 | @property(nonatomic, readonly, nullable) NSString *sdpMid;
25 |
26 | /**
27 | * The index (starting at zero) of the media description this candidate is
28 | * associated with in the SDP.
29 | */
30 | @property(nonatomic, readonly) int sdpMLineIndex;
31 |
32 | /** The SDP string for this candidate. */
33 | @property(nonatomic, readonly) NSString *sdp;
34 |
35 | - (instancetype)init NS_UNAVAILABLE;
36 |
37 | /**
38 | * Initialize an RTCIceCandidate from SDP.
39 | */
40 | - (instancetype)initWithSdp:(NSString *)sdp
41 | sdpMLineIndex:(int)sdpMLineIndex
42 | sdpMid:(nullable NSString *)sdpMid
43 | NS_DESIGNATED_INITIALIZER;
44 |
45 | @end
46 |
47 | NS_ASSUME_NONNULL_END
48 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCLegacyStatsReport.h:
--------------------------------------------------------------------------------
1 | /*
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
12 |
13 | #import
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | /** This does not currently conform to the spec. */
18 | RTC_EXPORT
19 | @interface RTCLegacyStatsReport : NSObject
20 |
21 | /** Time since 1970-01-01T00:00:00Z in milliseconds. */
22 | @property(nonatomic, readonly) CFTimeInterval timestamp;
23 |
24 | /** The type of stats held by this object. */
25 | @property(nonatomic, readonly) NSString *type;
26 |
27 | /** The identifier for this object. */
28 | @property(nonatomic, readonly) NSString *reportId;
29 |
30 | /** A dictionary holding the actual stats. */
31 | @property(nonatomic, readonly) NSDictionary *values;
32 |
33 | - (instancetype)init NS_UNAVAILABLE;
34 |
35 | @end
36 |
37 | NS_ASSUME_NONNULL_END
38 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCMacros.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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 | #ifndef WEBRTC_BASE_OBJC_RTC_MACROS_H_
12 | #define WEBRTC_BASE_OBJC_RTC_MACROS_H_
13 |
14 | #define RTC_EXPORT __attribute__((visibility("default")))
15 |
16 | #if defined(__cplusplus)
17 | #define RTC_EXTERN extern "C" RTC_EXPORT
18 | #else
19 | #define RTC_EXTERN extern RTC_EXPORT
20 | #endif
21 |
22 | #ifdef __OBJC__
23 | #define RTC_FWD_DECL_OBJC_CLASS(classname) @class classname
24 | #else
25 | #define RTC_FWD_DECL_OBJC_CLASS(classname) typedef struct objc_object classname
26 | #endif
27 |
28 | #endif // WEBRTC_BASE_OBJC_RTC_MACROS_H_
29 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCMediaSource.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 |
15 | typedef NS_ENUM(NSInteger, RTCSourceState) {
16 | RTCSourceStateInitializing,
17 | RTCSourceStateLive,
18 | RTCSourceStateEnded,
19 | RTCSourceStateMuted,
20 | };
21 |
22 | NS_ASSUME_NONNULL_BEGIN
23 |
24 | RTC_EXPORT
25 | @interface RTCMediaSource : NSObject
26 |
27 | /** The current state of the RTCMediaSource. */
28 | @property(nonatomic, readonly) RTCSourceState state;
29 |
30 | - (instancetype)init NS_UNAVAILABLE;
31 |
32 | @end
33 |
34 | NS_ASSUME_NONNULL_END
35 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCMetrics.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 | #import
15 |
16 | /**
17 | * Enables gathering of metrics (which can be fetched with
18 | * RTCGetAndResetMetrics). Must be called before any other call into WebRTC.
19 | */
20 | RTC_EXTERN void RTCEnableMetrics();
21 |
22 | /** Gets and clears native histograms. */
23 | RTC_EXTERN NSArray *RTCGetAndResetMetrics();
24 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCMetricsSampleInfo.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | RTC_EXPORT
18 | @interface RTCMetricsSampleInfo : NSObject
19 |
20 | /**
21 | * Example of RTCMetricsSampleInfo:
22 | * name: "WebRTC.Video.InputFramesPerSecond"
23 | * min: 1
24 | * max: 100
25 | * bucketCount: 50
26 | * samples: [29]:2 [30]:1
27 | */
28 |
29 | /** The name of the histogram. */
30 | @property(nonatomic, readonly) NSString *name;
31 |
32 | /** The minimum bucket value. */
33 | @property(nonatomic, readonly) int min;
34 |
35 | /** The maximum bucket value. */
36 | @property(nonatomic, readonly) int max;
37 |
38 | /** The number of buckets. */
39 | @property(nonatomic, readonly) int bucketCount;
40 |
41 | /** A dictionary holding the samples . */
42 | @property(nonatomic, readonly) NSDictionary *samples;
43 |
44 | - (instancetype)init NS_UNAVAILABLE;
45 |
46 | @end
47 |
48 | NS_ASSUME_NONNULL_END
49 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCRtpEncodingParameters.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | RTC_EXPORT
18 | @interface RTCRtpEncodingParameters : NSObject
19 |
20 | /** Controls whether the encoding is currently transmitted. */
21 | @property(nonatomic, assign) BOOL isActive;
22 |
23 | /** The maximum bitrate to use for the encoding, or nil if there is no
24 | * limit.
25 | */
26 | @property(nonatomic, copy, nullable) NSNumber *maxBitrateBps;
27 |
28 | /** The SSRC being used by this encoding. */
29 | @property(nonatomic, readonly, nullable) NSNumber *ssrc;
30 |
31 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
32 |
33 | @end
34 |
35 | NS_ASSUME_NONNULL_END
36 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCRtpParameters.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 | #import
15 | #import
16 |
17 | NS_ASSUME_NONNULL_BEGIN
18 |
19 | RTC_EXPORT
20 | @interface RTCRtpParameters : NSObject
21 |
22 | /** The currently active encodings in the order of preference. */
23 | @property(nonatomic, copy) NSArray *encodings;
24 |
25 | /** The negotiated set of send codecs in order of preference. */
26 | @property(nonatomic, copy) NSArray *codecs;
27 |
28 | - (instancetype)init NS_DESIGNATED_INITIALIZER;
29 |
30 | @end
31 |
32 | NS_ASSUME_NONNULL_END
33 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCSSLAdapter.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 |
15 | /**
16 | * Initialize and clean up the SSL library. Failure is fatal. These call the
17 | * corresponding functions in webrtc/base/ssladapter.h.
18 | */
19 | RTC_EXTERN BOOL RTCInitializeSSL();
20 | RTC_EXTERN BOOL RTCCleanupSSL();
21 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCTracing.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2016 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
12 |
13 | #import
14 |
15 | RTC_EXTERN void RTCSetupInternalTracer();
16 | /** Starts capture to specified file. Must be a valid writable path.
17 | * Returns YES if capture starts.
18 | */
19 | RTC_EXTERN BOOL RTCStartInternalCapture(NSString *filePath);
20 | RTC_EXTERN void RTCStopInternalCapture();
21 | RTC_EXTERN void RTCShutdownInternalTracer();
22 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCVideoRenderer.h:
--------------------------------------------------------------------------------
1 | /*
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
12 | #if TARGET_OS_IPHONE
13 | #import
14 | #endif
15 |
16 | #import
17 |
18 | NS_ASSUME_NONNULL_BEGIN
19 |
20 | @class RTCVideoFrame;
21 |
22 | RTC_EXPORT
23 | @protocol RTCVideoRenderer
24 |
25 | /** The size of the frame. */
26 | - (void)setSize:(CGSize)size;
27 |
28 | /** The frame to be displayed. */
29 | - (void)renderFrame:(nullable RTCVideoFrame *)frame;
30 |
31 | @end
32 |
33 | NS_ASSUME_NONNULL_END
34 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCVideoSource.h:
--------------------------------------------------------------------------------
1 | /*
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
12 |
13 | #import
14 | #import
15 |
16 | NS_ASSUME_NONNULL_BEGIN
17 |
18 | RTC_EXPORT
19 | @interface RTCVideoSource : RTCMediaSource
20 |
21 | - (instancetype)init NS_UNAVAILABLE;
22 |
23 | @end
24 |
25 | NS_ASSUME_NONNULL_END
26 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Headers/RTCVideoTrack.h:
--------------------------------------------------------------------------------
1 | /*
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
12 |
13 | #import
14 |
15 | NS_ASSUME_NONNULL_BEGIN
16 |
17 | @protocol RTCVideoRenderer;
18 | @class RTCPeerConnectionFactory;
19 | @class RTCVideoSource;
20 |
21 | RTC_EXPORT
22 | @interface RTCVideoTrack : RTCMediaStreamTrack
23 |
24 | /** The video source for this video track. */
25 | @property(nonatomic, readonly) RTCVideoSource *source;
26 |
27 | - (instancetype)init NS_UNAVAILABLE;
28 |
29 | /** Register a renderer that will render all frames received on this track. */
30 | - (void)addRenderer:(id)renderer;
31 |
32 | /** Deregister a renderer. */
33 | - (void)removeRenderer:(id)renderer;
34 |
35 | @end
36 |
37 | NS_ASSUME_NONNULL_END
38 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Info.plist:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sdkdimon/kms-ios-webrtc-call/9af2fa22563b67c28abdbc8fe212bfe2029fbbff/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Info.plist
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/Modules/module.modulemap:
--------------------------------------------------------------------------------
1 | framework module WebRTC {
2 | umbrella header "WebRTC.h"
3 |
4 | export *
5 | module * { export * }
6 | }
7 |
--------------------------------------------------------------------------------
/KMSWebRTC/Pods/WebRTC/WebRTC.framework/WebRTC:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/sdkdimon/kms-ios-webrtc-call/9af2fa22563b67c28abdbc8fe212bfe2029fbbff/KMSWebRTC/Pods/WebRTC/WebRTC.framework/WebRTC
--------------------------------------------------------------------------------
/KMSWebRTC/Sample/LoopBackCall/LoopBackCall.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/KMSWebRTC/Sample/LoopBackCall/LoopBackCall/AppDelegate.h:
--------------------------------------------------------------------------------
1 | // AppDelegate.h
2 | // Copyright (c) 2015 Dmitry Lizin (sdkdimon@gmail.com)
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublIcense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notIce and this permission notIce shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 |
22 | #import
23 |
24 | @interface AppDelegate : UIResponder
25 |
26 | @property (strong, nonatomic) UIWindow *window;
27 |
28 |
29 | @end
30 |
31 |
--------------------------------------------------------------------------------
/KMSWebRTC/Sample/LoopBackCall/LoopBackCall/Images.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "29x29",
11 | "scale" : "3x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "40x40",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "40x40",
21 | "scale" : "3x"
22 | },
23 | {
24 | "idiom" : "iphone",
25 | "size" : "60x60",
26 | "scale" : "2x"
27 | },
28 | {
29 | "idiom" : "iphone",
30 | "size" : "60x60",
31 | "scale" : "3x"
32 | },
33 | {
34 | "idiom" : "ipad",
35 | "size" : "29x29",
36 | "scale" : "1x"
37 | },
38 | {
39 | "idiom" : "ipad",
40 | "size" : "29x29",
41 | "scale" : "2x"
42 | },
43 | {
44 | "idiom" : "ipad",
45 | "size" : "40x40",
46 | "scale" : "1x"
47 | },
48 | {
49 | "idiom" : "ipad",
50 | "size" : "40x40",
51 | "scale" : "2x"
52 | },
53 | {
54 | "idiom" : "ipad",
55 | "size" : "76x76",
56 | "scale" : "1x"
57 | },
58 | {
59 | "idiom" : "ipad",
60 | "size" : "76x76",
61 | "scale" : "2x"
62 | }
63 | ],
64 | "info" : {
65 | "version" : 1,
66 | "author" : "xcode"
67 | }
68 | }
--------------------------------------------------------------------------------
/KMSWebRTC/Sample/LoopBackCall/LoopBackCall/Images.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/KMSWebRTC/Sample/LoopBackCall/LoopBackCall/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | APPL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 | LSRequiresIPhoneOS
24 |
25 | UILaunchStoryboardName
26 | Launch Screen
27 | UIRequiredDevIceCapabilities
28 |
29 | armv7
30 |
31 | UIRequiresFullScreen
32 |
33 | UISupportedInterfaceOrientations
34 |
35 | UIInterfaceOrientationPortrait
36 |
37 | UISupportedInterfaceOrientations~ipad
38 |
39 | UIInterfaceOrientationPortrait
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/KMSWebRTC/Sample/LoopBackCall/LoopBackCall/RootViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // Copyright (c) 2015 Dmitry Lizin (sdkdimon@gmail.com)
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublIcense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notIce and this permission notIce shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #import
24 |
25 |
26 | @interface RootViewController : UIViewController
27 |
28 | @end
29 |
30 |
--------------------------------------------------------------------------------
/KMSWebRTC/Sample/LoopBackCall/LoopBackCall/main.m:
--------------------------------------------------------------------------------
1 | // main.m
2 | // Copyright (c) 2015 Dmitry Lizin (sdkdimon@gmail.com)
3 | //
4 | // Permission is hereby granted, free of charge, to any person obtaining a copy
5 | // of this software and associated documentation files (the "Software"), to deal
6 | // in the Software without restriction, including without limitation the rights
7 | // to use, copy, modify, merge, publish, distribute, sublIcense, and/or sell
8 | // copies of the Software, and to permit persons to whom the Software is
9 | // furnished to do so, subject to the following conditions:
10 | //
11 | // The above copyright notIce and this permission notIce shall be included in
12 | // all copies or substantial portions of the Software.
13 | //
14 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | // THE SOFTWARE.
21 |
22 | #import
23 | #import "AppDelegate.h"
24 |
25 | int main(int argc, char * argv[]) {
26 | @autoreleasepool {
27 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 Dmitry
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # kms-ios-webrtc-call
2 | Kurento iOS WebRTC Call
3 |
--------------------------------------------------------------------------------