sim_lib_view_spatial/
reproject_loop.rs1use sim_lib_view_device::{AdapterLoop, DeviceProfile, FrameClock, GlanceAdapter, StalePolicy};
4
5use crate::{ClampedReprojector, halo_glance_config};
6
7pub type VitureReprojectLoop = AdapterLoop<ClampedReprojector>;
9
10pub type HaloGlanceLoop = AdapterLoop<GlanceAdapter>;
12
13pub fn viture_loop(
15 profile: &DeviceProfile,
16 max_predict_ms: u64,
17) -> (VitureReprojectLoop, FrameClock) {
18 (
19 AdapterLoop::new(
20 ClampedReprojector::new(max_predict_ms),
21 StalePolicy::Predict,
22 ),
23 FrameClock::at_zero(profile.rate),
24 )
25}
26
27pub fn halo_loop(profile: &DeviceProfile) -> (HaloGlanceLoop, FrameClock) {
29 (
30 AdapterLoop::new(halo_glance_config(), StalePolicy::HoldLast),
31 FrameClock::at_zero(profile.rate),
32 )
33}