1# Copyright (c) 2021 The WebRTC project authors. All Rights Reserved. 2# 3# Use of this source code is governed by a BSD-style license 4# that can be found in the LICENSE file in the root of the source 5# tree. An additional intellectual property rights grant can be found 6# in the file PATENTS. All contributing project authors may 7# be found in the AUTHORS file in the root of the source tree. 8 9import("../../../webrtc.gni") 10 11rtc_library("data_tracker") { 12 deps = [ 13 "../../../api:array_view", 14 "../../../rtc_base:checks", 15 "../../../rtc_base:logging", 16 "../../../rtc_base:stringutils", 17 "../common:sequence_numbers", 18 "../packet:chunk", 19 "../packet:data", 20 "../public:socket", 21 "../timer", 22 ] 23 sources = [ 24 "data_tracker.cc", 25 "data_tracker.h", 26 ] 27 absl_deps = [ 28 "//third_party/abseil-cpp/absl/algorithm:container", 29 "//third_party/abseil-cpp/absl/strings", 30 "//third_party/abseil-cpp/absl/types:optional", 31 ] 32} 33 34rtc_source_set("reassembly_streams") { 35 deps = [ 36 "../../../api:array_view", 37 "../common:sequence_numbers", 38 "../packet:chunk", 39 "../packet:data", 40 "../public:socket", 41 "../public:types", 42 ] 43 sources = [ "reassembly_streams.h" ] 44 absl_deps = [ "//third_party/abseil-cpp/absl/strings" ] 45} 46 47rtc_library("interleaved_reassembly_streams") { 48 deps = [ 49 ":reassembly_streams", 50 "../../../api:array_view", 51 "../../../rtc_base", 52 "../../../rtc_base:checks", 53 "../../../rtc_base:logging", 54 "../common:sequence_numbers", 55 "../packet:chunk", 56 "../packet:data", 57 "../public:types", 58 ] 59 sources = [ 60 "interleaved_reassembly_streams.cc", 61 "interleaved_reassembly_streams.h", 62 ] 63 absl_deps = [ 64 "//third_party/abseil-cpp/absl/algorithm:container", 65 "//third_party/abseil-cpp/absl/strings", 66 "//third_party/abseil-cpp/absl/types:optional", 67 ] 68} 69rtc_library("traditional_reassembly_streams") { 70 deps = [ 71 ":reassembly_streams", 72 "../../../api:array_view", 73 "../../../rtc_base:checks", 74 "../../../rtc_base:logging", 75 "../common:sequence_numbers", 76 "../packet:chunk", 77 "../packet:data", 78 "../public:types", 79 ] 80 sources = [ 81 "traditional_reassembly_streams.cc", 82 "traditional_reassembly_streams.h", 83 ] 84 absl_deps = [ 85 "//third_party/abseil-cpp/absl/algorithm:container", 86 "//third_party/abseil-cpp/absl/strings", 87 "//third_party/abseil-cpp/absl/types:optional", 88 ] 89} 90 91rtc_library("reassembly_queue") { 92 deps = [ 93 ":interleaved_reassembly_streams", 94 ":reassembly_streams", 95 ":traditional_reassembly_streams", 96 "../../../api:array_view", 97 "../../../rtc_base:checks", 98 "../../../rtc_base:logging", 99 "../common:internal_types", 100 "../common:sequence_numbers", 101 "../common:str_join", 102 "../packet:chunk", 103 "../packet:data", 104 "../packet:parameter", 105 "../public:socket", 106 "../public:types", 107 ] 108 sources = [ 109 "reassembly_queue.cc", 110 "reassembly_queue.h", 111 ] 112 absl_deps = [ 113 "//third_party/abseil-cpp/absl/strings", 114 "//third_party/abseil-cpp/absl/types:optional", 115 ] 116} 117 118if (rtc_include_tests) { 119 rtc_library("dcsctp_rx_unittests") { 120 testonly = true 121 122 deps = [ 123 ":data_tracker", 124 ":interleaved_reassembly_streams", 125 ":reassembly_queue", 126 ":reassembly_streams", 127 ":traditional_reassembly_streams", 128 "../../../api:array_view", 129 "../../../api/task_queue:task_queue", 130 "../../../rtc_base:checks", 131 "../../../rtc_base:gunit_helpers", 132 "../../../test:test_support", 133 "../common:handover_testing", 134 "../common:sequence_numbers", 135 "../packet:chunk", 136 "../packet:data", 137 "../public:types", 138 "../testing:data_generator", 139 "../timer", 140 ] 141 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] 142 sources = [ 143 "data_tracker_test.cc", 144 "interleaved_reassembly_streams_test.cc", 145 "reassembly_queue_test.cc", 146 "traditional_reassembly_streams_test.cc", 147 ] 148 } 149} 150