recordScan method
Records a scan operation event.
Implementation
void recordScan(ScanResult result) {
_totalScans++;
final modeKey = result.mode.name;
_scansByMode[modeKey] = (_scansByMode[modeKey] ?? 0) + 1;
if (result.format != null && result.format!.isNotEmpty) {
_scansByFormat[result.format!] =
(_scansByFormat[result.format!] ?? 0) + 1;
}
if (result.isDuplicate) {
_duplicateScans++;
}
if (result.isValid) {
_successfulScans++;
if (result.scanDuration != null) {
_scanDurations.add(result.scanDuration!);
if (_scanDurations.length > 500) {
_scanDurations.removeAt(0);
}
}
} else {
_failedScans++;
}
}