| # Copyright (c) 2018 The WebRTC project authors. All Rights Reserved. |
| # |
| # Use of this source code is governed by a BSD-style license |
| # that can be found in the LICENSE file in the root of the source |
| # tree. An additional intellectual property rights grant can be found |
| # in the file PATENTS. All contributing project authors may |
| # be found in the AUTHORS file in the root of the source tree. |
| |
| import("../../../webrtc.gni") |
| |
| rtc_library("pcc") { |
| sources = [ |
| "pcc_factory.cc", |
| "pcc_factory.h", |
| ] |
| deps = [ |
| ":pcc_controller", |
| "../../../api/transport:network_control", |
| "../../../api/units:time_delta", |
| ] |
| } |
| |
| rtc_library("pcc_controller") { |
| sources = [ |
| "pcc_network_controller.cc", |
| "pcc_network_controller.h", |
| ] |
| deps = [ |
| ":bitrate_controller", |
| ":monitor_interval", |
| ":rtt_tracker", |
| "../../../api/transport:network_control", |
| "../../../api/units:data_rate", |
| "../../../api/units:data_size", |
| "../../../api/units:time_delta", |
| "../../../api/units:timestamp", |
| "../../../rtc_base:checks", |
| "../../../rtc_base:random", |
| ] |
| absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] |
| } |
| |
| rtc_library("monitor_interval") { |
| sources = [ |
| "monitor_interval.cc", |
| "monitor_interval.h", |
| ] |
| deps = [ |
| "../../../api/transport:network_control", |
| "../../../api/units:data_rate", |
| "../../../api/units:data_size", |
| "../../../api/units:time_delta", |
| "../../../api/units:timestamp", |
| "../../../rtc_base:logging", |
| ] |
| } |
| |
| rtc_library("rtt_tracker") { |
| sources = [ |
| "rtt_tracker.cc", |
| "rtt_tracker.h", |
| ] |
| deps = [ |
| "../../../api/transport:network_control", |
| "../../../api/units:time_delta", |
| "../../../api/units:timestamp", |
| ] |
| } |
| |
| rtc_library("utility_function") { |
| sources = [ |
| "utility_function.cc", |
| "utility_function.h", |
| ] |
| deps = [ |
| ":monitor_interval", |
| "../../../api/transport:network_control", |
| "../../../api/units:data_rate", |
| "../../../rtc_base:checks", |
| ] |
| } |
| |
| rtc_library("bitrate_controller") { |
| sources = [ |
| "bitrate_controller.cc", |
| "bitrate_controller.h", |
| ] |
| deps = [ |
| ":monitor_interval", |
| ":utility_function", |
| "../../../api/transport:network_control", |
| "../../../api/units:data_rate", |
| ] |
| absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] |
| } |
| |
| if (rtc_include_tests && !build_with_chromium) { |
| rtc_library("pcc_unittests") { |
| testonly = true |
| sources = [ |
| "bitrate_controller_unittest.cc", |
| "monitor_interval_unittest.cc", |
| "pcc_network_controller_unittest.cc", |
| "rtt_tracker_unittest.cc", |
| "utility_function_unittest.cc", |
| ] |
| deps = [ |
| ":bitrate_controller", |
| ":monitor_interval", |
| ":pcc", |
| ":pcc_controller", |
| ":rtt_tracker", |
| ":utility_function", |
| "../../../api/transport:network_control", |
| "../../../api/units:data_rate", |
| "../../../api/units:data_size", |
| "../../../api/units:time_delta", |
| "../../../api/units:timestamp", |
| "../../../test:test_support", |
| "../../../test/scenario", |
| ] |
| } |
| } |