Move RtcEventProbeClusterCreated to the network controller.

Originally RtcEventProbeClusterCreated was logged in bitrate prober. This means that anyone who was using GoogCcNetworkControl wasn't logging it, and the NetworkControl wasn't self-contained.
This changes moves the responsibility for logging ProbeClusterCreated to ProbeController (where the probe is created), it also moves the responsibility for assigning probe ids to the probe controller.

Bug: None
Change-Id: If0433cc6d311b5483ea3980749b03ddbcd2bf041
Reviewed-on: https://webrtc-review.googlesource.com/c/122927
Commit-Queue: Peter Slatala <psla@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#26713}
This commit is contained in:
Piotr (Peter) Slatala
2019-02-15 07:38:04 -08:00
committed by Commit Bot
parent 6255af99a8
commit c39f462b2d
17 changed files with 83 additions and 46 deletions

View File

@ -19,6 +19,7 @@
#include "absl/types/optional.h"
#include "api/transport/network_control.h"
#include "api/transport/webrtc_key_value_config.h"
#include "logging/rtc_event_log/rtc_event_log.h"
#include "rtc_base/constructor_magic.h"
#include "rtc_base/system/unused.h"
@ -31,7 +32,8 @@ class Clock;
// bitrate is adjusted by an application.
class ProbeController {
public:
explicit ProbeController(const WebRtcKeyValueConfig* key_value_config);
explicit ProbeController(const WebRtcKeyValueConfig* key_value_config,
RtcEventLog* event_log);
~ProbeController();
RTC_WARN_UNUSED_RESULT std::vector<ProbeClusterConfig> SetBitrates(
@ -112,6 +114,9 @@ class ProbeController {
bool mid_call_probing_waiting_for_result_;
int64_t mid_call_probing_bitrate_bps_;
int64_t mid_call_probing_succcess_threshold_;
RtcEventLog* event_log_;
int32_t next_probe_cluster_id_ = 1;
RTC_DISALLOW_COPY_AND_ASSIGN(ProbeController);
};