use std::collections::HashSet;
#[derive(Debug)]
pub struct LoadProgress {
loaded_frames: HashSet<(usize, usize)>,
total_frames: usize,
}
impl LoadProgress {
pub fn new(total_frames: usize) -> Self {
Self {
loaded_frames: HashSet::new(),
total_frames,
}
}
pub fn update(&mut self, seq_idx: usize, frame_idx: usize) {
let key = (seq_idx, frame_idx);
self.loaded_frames.insert(key);
}
pub fn set_total(&mut self, total: usize) {
self.total_frames = total;
}
pub fn clear(&mut self) {
self.loaded_frames.clear();
self.total_frames = 0;
}
}