similari 0.22.2

Machine learning framework for building object trackers and similarity search engines
Documentation
use crate::prelude::Universal2DBox;
use crate::trackers::batch::{PredictionBatchRequest, PredictionBatchResult};
use pyo3::prelude::*;

#[derive(Debug)]
#[pyclass]
#[pyo3(name = "SortPredictionBatchRequest")]
pub(crate) struct PySortPredictionBatchRequest {
    batch: PredictionBatchRequest<(Universal2DBox, Option<i64>)>,
    result: Option<PredictionBatchResult>,
}

#[pymethods]
impl PySortPredictionBatchRequest {
    #[new]
    fn new() -> Self {
        let (batch, result) = PredictionBatchRequest::new();
        Self {
            batch,
            result: Some(result),
        }
    }

    fn prediction(&mut self) -> Option<PredictionBatchResult> {
        self.result.take()
    }

    fn add(&mut self, scene_id: u64, elt: (Universal2DBox, Option<i64>)) {
        self.batch.add(scene_id, elt)
    }
}