[wpilib] DriverStation: Add usage reporting for opmodes (#8761)

This commit is contained in:
Zach Harel
2026-04-24 22:20:45 -04:00
committed by GitHub
parent 68a8ebfc81
commit a6425d3e1e
2 changed files with 24 additions and 0 deletions

View File

@@ -10,6 +10,7 @@ import java.util.Optional;
import java.util.OptionalDouble;
import java.util.OptionalInt;
import java.util.concurrent.locks.ReentrantLock;
import java.util.stream.Collectors;
import org.wpilib.datalog.BooleanArrayLogEntry;
import org.wpilib.datalog.DataLog;
import org.wpilib.datalog.FloatArrayLogEntry;
@@ -1343,6 +1344,14 @@ public final class DriverStationBackend {
} finally {
m_opModesMutex.unlock();
}
var modeCounts =
m_opModes.values().stream()
.collect(Collectors.groupingBy(OpModeOption::getMode, Collectors.counting()));
for (RobotMode mode : RobotMode.values()) {
HAL.reportUsage("OpMode/" + mode, String.valueOf(modeCounts.getOrDefault(mode, 0L)));
}
}
/** Clears all operating mode options and publishes an empty list to the driver station. */