FERS 0.1.0
The Flexible Extensible Radar Simulator
Loading...
Searching...
No Matches
Vita49LatePacketInfo.tsx
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-2.0-only
2// Copyright (c) 2026-present FERS Contributors (see AUTHORS.md).
3
4import InfoOutlinedIcon from '@mui/icons-material/InfoOutlined';
5import { IconButton, Tooltip } from '@mui/material';
6
7export const latePacketTooltipText = (
8 dataPacketCount: number,
9 contextPacketCount: number
10) =>
11 `Packets dispatched more than 1 ms after their scheduled wall-clock deadline. Data: ${dataPacketCount.toLocaleString()}. Context: ${contextPacketCount.toLocaleString()}.`;
12
13export const totalLatePacketCount = (
14 dataPacketCount: number,
15 contextPacketCount: number
16) => dataPacketCount + contextPacketCount;
17
18type Vita49LatePacketInfoProps = {
19 dataPacketCount: number;
20 contextPacketCount: number;
21};
22
23export function Vita49LatePacketInfo({
24 dataPacketCount,
25 contextPacketCount,
26}: Vita49LatePacketInfoProps) {
27 const explanation = latePacketTooltipText(
28 dataPacketCount,
29 contextPacketCount
30 );
31
32 return (
33 <Tooltip title={explanation} arrow>
34 <IconButton
35 aria-label={explanation}
36 size="small"
37 sx={{ ml: 0.25, p: 0.25, color: 'text.secondary' }}
38 >
39 <InfoOutlinedIcon sx={{ fontSize: 15 }} />
40 </IconButton>
41 </Tooltip>
42 );
43}