Skip to main content

score_set/
metric.rs

1use witnessed::Witnessed;
2
3use crate::{
4    normalized_eval::{NormalizedEval32, NormalizedEval64},
5    traits::V01,
6    weighted::{Weighted32, Weighted64},
7};
8
9/// Builds a weighted `f64` metric from a measurement and normalization map.
10pub fn metric64<M, G>(
11    measure: M,
12    map: G,
13    weight: Witnessed<f64, V01>,
14) -> Weighted64<NormalizedEval64<M, G>> {
15    Weighted64::new(NormalizedEval64::new(measure, map), weight)
16}
17
18/// Builds a weighted `f32` metric from a measurement and normalization map.
19pub fn metric32<M, G>(
20    measure: M,
21    map: G,
22    weight: Witnessed<f32, V01>,
23) -> Weighted32<NormalizedEval32<M, G>> {
24    Weighted32::new(NormalizedEval32::new(measure, map), weight)
25}