diff --git a/src/io/scheduler.rs b/src/io/scheduler.rs index 289cdf06..732f9b16 100644 --- a/src/io/scheduler.rs +++ b/src/io/scheduler.rs @@ -1,9 +1,7 @@ use std::collections::{HashMap, HashSet}; - - use geozero::mvt::Tile; -use geozero::{GeozeroDatasource}; +use geozero::GeozeroDatasource; use log::{error, info}; use std::sync::mpsc::{channel, Receiver, SendError, Sender}; use std::sync::{Arc, Mutex}; @@ -237,7 +235,7 @@ pub struct IOScheduler { index_channel: (Sender, Receiver), tessellate_channel: (Sender, Receiver), tile_request_state: Arc>, - pub tile_cache: TileCache, + tile_cache: TileCache, schedule_method: ScheduleMethod, } @@ -313,13 +311,8 @@ impl IOScheduler { Ok(()) } - pub fn iter_tessellated_layers_at<'b: 'a, 'a>( - &'b self, - coords: &WorldTileCoords, - skip_layers: &'a HashSet<&str>, - ) -> Option + 'a> { - self.tile_cache - .iter_tessellated_layers_at(coords, skip_layers) + pub fn get_tile_cache(&self) -> &TileCache { + &self.tile_cache } } diff --git a/src/main_loop.rs b/src/main_loop.rs index 0e61a240..262663a5 100644 --- a/src/main_loop.rs +++ b/src/main_loop.rs @@ -97,7 +97,7 @@ pub async fn run( scheduler.try_populate_cache(); - input.update_state(state, &scheduler.tile_cache, dt); + input.update_state(state, scheduler.get_tile_cache(), dt); state.upload_tile_geometry(&mut scheduler); match state.render() { Ok(_) => {} diff --git a/src/render/render_state.rs b/src/render/render_state.rs index 34d14a4c..5cd4e368 100644 --- a/src/render/render_state.rs +++ b/src/render/render_state.rs @@ -414,6 +414,7 @@ impl RenderState { let loaded_layers = self.buffer_pool.get_loaded_layers_at(&world_coords); if let Some(available_layers) = scheduler + .get_tile_cache() .iter_tessellated_layers_at(&world_coords, &loaded_layers) .map(|layers| layers.collect::>()) {