webrtc/sdk/objc
Niels Möller 8909a63aca Reland "Explicitly wrap main thread in test_main.cc."
This is a reland of 711a31aead

Changes since original landing:

Rename methods only used by tests, mainly via FakeClock,

  MessageQueueManager::ProcessAllMessageQueues
     --> ProcessAllMessageQueuesForTesting

  MessageQueue::IsProcessingMessages
     --> IsProcessingMessagesForTesting

Fix the handling of null rtc::Thread::Current() in
ProcessAllMessageQueuesInternal().

Add override Thread::IsProcessingMessagesForTesting() to return false
for the wrapped main thread, unless it's also the current thread. In
tests, the main thread is typically not processing any messages,
but blocked in an Event::Wait().

Original change's description:
> Explicitly wrap main thread in test_main.cc.
>
> Bug: webrtc:9714
> Change-Id: I6ee234f9a0b88b3656a683f2455c3e4b2acf0d54
> Reviewed-on: https://webrtc-review.googlesource.com/97683
> Reviewed-by: Tommi <tommi@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24560}

Bug: webrtc:9714
Change-Id: I6f022d46aaf1e28f86f09f2d68c1803b69770126
Reviewed-on: https://webrtc-review.googlesource.com/98060
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24596}
2018-09-06 08:38:18 +00:00
..
api Scaling settings nullability in Obj-C SDK. 2018-09-05 08:51:12 +00:00
base Scaling settings nullability in Obj-C SDK. 2018-09-05 08:51:12 +00:00
components Generate umbrella header for macOS framework. 2018-09-06 08:27:18 +00:00
Framework Include i420 buffers in Obj-C framework again. 2018-09-03 15:06:18 +00:00
helpers Obj-C SDK Cleanup 2018-08-30 10:42:41 +00:00
native Include i420 buffers in Obj-C framework again. 2018-09-03 15:06:18 +00:00
unittests Reland "Explicitly wrap main thread in test_main.cc." 2018-09-06 08:38:18 +00:00
DEPS Obj-C SDK Cleanup 2018-08-30 10:42:41 +00:00
Info.plist Obj-C SDK Cleanup 2018-08-30 10:42:41 +00:00
OWNERS Update sdk/objc ownership 2018-05-08 11:48:32 +00:00
README.md Obj-C SDK Cleanup 2018-08-30 10:42:41 +00:00
WebRTC.podspec Fix podspec iOS version. 2018-03-16 09:30:27 +00:00

WebRTC Obj-C SDK

This directory contains the Obj-C SDK for WebRTC. This includes wrappers for the C++ PeerConnection API and some platform specific components for iOS and macOS.

Organization

  • api/

    Wrappers around classes and functions in the C++ API for creating and configuring peer connections, etc.

  • base/

    This directory contains some base protocols and classes that are used by both the platform specific components and the SDK wrappers.

  • components/

    These are the platform specific components. Contains components for handling audio, capturing and rendering video, encoding and decoding using the platform's hardware codec implementation and for representing video frames in the platform's native format.

  • helpers/

    These files are not WebRTC specific, but are general helper classes and utilities for the Cocoa platforms.

  • native/

    APIs for wrapping the platform specific components and using them with the C++ API.

  • unittests/

    This directory contains the tests.