feat(tcp): TCPStreamer DataSources, in-process TCPStreamService, stream multiplexing and TCPStreamJoin
Add TCPStreamer/TCPStreamerClient (TCP transport behind the UDPSServerI/UDPSClientI seam), an optional single in-process TCPStreamService serving many streams over worker threads, multiplexed SUBSCRIBE (comma list, stream index in fragmentIdx), and TCPStreamJoin, which merges several streams into one sample-and-hold stream paced by a master. StreamHub takes a comma list of streams over one connection. Includes GTests, E2E scenarios s58-s73 and docs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
5562877c99
commit
50d85363a3
79 files changed
+12348
-138
No files matched your search
@@ -113,6 +113,12 @@ def build_ground_truth(scenario):
|
||||
"range_min": sig["range_min"], "range_max": sig["range_max"],
|
||||
"is_time": sig["is_time"],
|
||||
}
|
||||
hub = scenario.get("hub")
|
||||
if hub and hub.get("mode") == "join":
|
||||
# The merged stream carries every source signal as "<src>_<signal>".
|
||||
for key in list(gt):
|
||||
src_id, sig_name = key.split(":", 1)
|
||||
gt[f"{hub['name']}:{src_id}_{sig_name}"] = gt[key]
|
||||
return gt
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user