blob: 58d8f52d77fe25f8fd98969ae82ecae8654a8346 [file] [log] [blame]
Mirko Bonadei12ae4f42019-02-26 15:19:07 +01001/*
2 * Copyright (c) 2019 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
Artem Titovd57628f2019-03-22 12:34:25 +010011#ifndef API_TEST_STATS_OBSERVER_INTERFACE_H_
12#define API_TEST_STATS_OBSERVER_INTERFACE_H_
Mirko Bonadei12ae4f42019-02-26 15:19:07 +010013
Andrey Logvin9b526182020-06-15 16:14:07 +000014#include "absl/strings/string_view.h"
15#include "api/stats/rtc_stats_report.h"
Mirko Bonadei12ae4f42019-02-26 15:19:07 +010016
17namespace webrtc {
Artem Titov0b443142019-03-20 11:11:08 +010018namespace webrtc_pc_e2e {
Mirko Bonadei12ae4f42019-02-26 15:19:07 +010019
Artem Titovd57628f2019-03-22 12:34:25 +010020// API is in development and can be changed without notice.
Mirko Bonadei12ae4f42019-02-26 15:19:07 +010021class StatsObserverInterface {
22 public:
23 virtual ~StatsObserverInterface() = default;
24
25 // Method called when stats reports are available for the PeerConnection
Artem Titov0e61fdd2021-07-25 21:50:14 +020026 // identified by `pc_label`.
Andrey Logvin9b526182020-06-15 16:14:07 +000027 virtual void OnStatsReports(
28 absl::string_view pc_label,
29 const rtc::scoped_refptr<const RTCStatsReport>& report) = 0;
Mirko Bonadei12ae4f42019-02-26 15:19:07 +010030};
31
Artem Titov0b443142019-03-20 11:11:08 +010032} // namespace webrtc_pc_e2e
Mirko Bonadei12ae4f42019-02-26 15:19:07 +010033} // namespace webrtc
34
Artem Titovd57628f2019-03-22 12:34:25 +010035#endif // API_TEST_STATS_OBSERVER_INTERFACE_H_