AgcManagerDirect: Add histograms for clipping prediction precision and recall

Add histograms WebRTC.Audio.Agc.ClippingPredictor.Precision and WebRTC.Audio.Agc.ClippingPredictor.Recall. The histograms are defined in https://chromium-review.googlesource.com/c/chromium/src/+/3150271.

Bug: webrtc:12774
Change-Id: I1561ec7a61377c262f636d7aa3a5d5fd60a8839d
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/231460
Commit-Queue: Hanna Silen <silen@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#35083}
diff --git a/modules/audio_processing/agc/agc_manager_direct.cc b/modules/audio_processing/agc/agc_manager_direct.cc
index bda1cae..b2b8a51 100644
--- a/modules/audio_processing/agc/agc_manager_direct.cc
+++ b/modules/audio_processing/agc/agc_manager_direct.cc
@@ -142,12 +142,28 @@
                      << metrics->f1_score;
     RTC_DCHECK_GE(metrics->f1_score, 0.0f);
     RTC_DCHECK_LE(metrics->f1_score, 1.0f);
+    RTC_DCHECK_GE(metrics->precision, 0.0f);
+    RTC_DCHECK_LE(metrics->precision, 1.0f);
+    RTC_DCHECK_GE(metrics->recall, 0.0f);
+    RTC_DCHECK_LE(metrics->recall, 1.0f);
     RTC_HISTOGRAM_COUNTS_LINEAR(
         /*name=*/"WebRTC.Audio.Agc.ClippingPredictor.F1Score",
         /*sample=*/std::round(metrics->f1_score * 100.0f),
         /*min=*/0,
         /*max=*/100,
         /*bucket_count=*/50);
+    RTC_HISTOGRAM_COUNTS_LINEAR(
+        /*name=*/"WebRTC.Audio.Agc.ClippingPredictor.Precision",
+        /*sample=*/std::round(metrics->precision * 100.0f),
+        /*min=*/0,
+        /*max=*/100,
+        /*bucket_count=*/50);
+    RTC_HISTOGRAM_COUNTS_LINEAR(
+        /*name=*/"WebRTC.Audio.Agc.ClippingPredictor.Recall",
+        /*sample=*/std::round(metrics->recall * 100.0f),
+        /*min=*/0,
+        /*max=*/100,
+        /*bucket_count=*/50);
   }
 }