1 /*
2 * Copyright (c) 2021 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 #include "api/test/network_emulation/create_cross_traffic.h"
11
12 #include <memory>
13
14 #include "rtc_base/task_utils/repeating_task.h"
15 #include "test/network/cross_traffic.h"
16
17 namespace webrtc {
18
CreateRandomWalkCrossTraffic(CrossTrafficRoute * traffic_route,RandomWalkConfig config)19 std::unique_ptr<CrossTrafficGenerator> CreateRandomWalkCrossTraffic(
20 CrossTrafficRoute* traffic_route,
21 RandomWalkConfig config) {
22 return std::make_unique<test::RandomWalkCrossTraffic>(config, traffic_route);
23 }
24
CreatePulsedPeaksCrossTraffic(CrossTrafficRoute * traffic_route,PulsedPeaksConfig config)25 std::unique_ptr<CrossTrafficGenerator> CreatePulsedPeaksCrossTraffic(
26 CrossTrafficRoute* traffic_route,
27 PulsedPeaksConfig config) {
28 return std::make_unique<test::PulsedPeaksCrossTraffic>(config, traffic_route);
29 }
30
CreateFakeTcpCrossTraffic(EmulatedRoute * send_route,EmulatedRoute * ret_route,FakeTcpConfig config)31 std::unique_ptr<CrossTrafficGenerator> CreateFakeTcpCrossTraffic(
32 EmulatedRoute* send_route,
33 EmulatedRoute* ret_route,
34 FakeTcpConfig config) {
35 return std::make_unique<test::FakeTcpCrossTraffic>(config, send_route,
36 ret_route);
37 }
38
39 } // namespace webrtc
40