Fix circular dependencies in webrtc_common.

One reason for the circular deps is that common_types.h is a
historical dumping ground for various structs and defines that
are believed to be generally useful. I tried moving things out
that did not appear to be used downstream (StreamCounters,
RtpCounters etc) and moved the things that seemed used
(RtpHeader + supporting structs) to a new file api/rtp_headers.h.
This makes their place in the api more clear while moving out
the things that don't belong in the API in the first place.

I had to extract out typedefs.h from webrtc_common to resolve
another circular dependency. I believe checks includes typedefs,
but common depends on checks.

Bug: webrtc:7745
Change-Id: I725d49616b1ec0cdc8b74be7c078f7a4d46f084b
Reviewed-on: https://webrtc-review.googlesource.com/33001
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21295}
This commit is contained in:
Patrik Höglund
2017-12-15 14:40:10 +01:00
committed by Commit Bot
parent d5d0540b86
commit 3e113438b1
57 changed files with 559 additions and 316 deletions

View File

@ -99,6 +99,7 @@ rtc_static_library("video_coding") {
"..:module_api",
"..:module_api_public",
"../..:webrtc_common",
"../../:typedefs",
"../../api:optional",
"../../api:video_frame_api_i420",
"../../call:video_stream_api",
@ -127,6 +128,7 @@ rtc_source_set("mock_headers") {
deps = [
":video_coding_utility",
"../..:webrtc_common",
"../../:typedefs",
"../../test:test_support",
]
}
@ -169,6 +171,7 @@ rtc_source_set("video_coding_utility") {
deps = [
"..:module_api",
"../..:webrtc_common",
"../../:typedefs",
"../../api:optional",
"../../api/video_codecs:video_codecs_api",
"../../common_video",
@ -239,6 +242,7 @@ rtc_static_library("webrtc_i420") {
deps = [
":video_coding_utility",
"../..:webrtc_common",
"../../:typedefs",
"../../api:video_frame_api_i420",
"../../common_video:common_video",
"../../rtc_base:checks",
@ -301,6 +305,7 @@ rtc_static_library("webrtc_vp8") {
":video_coding_utility",
"..:module_api",
"../..:webrtc_common",
"../../:typedefs",
"../../api:optional",
"../../api/video_codecs:video_codecs_api",
"../../common_video",
@ -431,6 +436,7 @@ if (rtc_include_tests) {
":video_coding_utility",
":webrtc_vp8",
"../..:webrtc_common",
"../../:typedefs",
"../../api:video_frame_api_i420",
"../../api/video_codecs:video_codecs_api",
"../../common_video:common_video",
@ -599,6 +605,7 @@ if (rtc_include_tests) {
":webrtc_vp9",
"..:module_api",
"../..:webrtc_common",
"../../:typedefs",
"../../api:video_frame_api",
"../../api:video_frame_api_i420",
"../../api/video_codecs:video_codecs_api",