pub struct WorkerGenLevelSource { /* private fields */ }
Expand description
A wrapper for LevelGenerator
that implements LevelSource
to provide asynchronous level
generation. This wrapper dispatches incoming chunk request into the given number of worker
threads.
Implementations§
Trait Implementations§
Source§impl LevelSource for WorkerGenLevelSource
impl LevelSource for WorkerGenLevelSource
Source§fn request_chunk_load(
&mut self,
req: ChunkLoadRequest,
) -> Result<(), (LevelSourceError, ChunkLoadRequest)>
fn request_chunk_load( &mut self, req: ChunkLoadRequest, ) -> Result<(), (LevelSourceError, ChunkLoadRequest)>
Request loading of the chunk at the given position. If you return an error, you must
return back the given
ChunkInfo
together with the LevelSourceError
. If you return
Ok(())
you must give a result later when calling poll_chunk
. This operation
must be non-blocking.Source§fn poll_chunk(
&mut self,
) -> Option<Result<ProtoChunk, (LevelSourceError, ChunkLoadRequest)>>
fn poll_chunk( &mut self, ) -> Option<Result<ProtoChunk, (LevelSourceError, ChunkLoadRequest)>>
Poll the next loaded chunk that is ready to be inserted into the level’s chunk storage.
Every requested load chunk
request_chunk_load
method that returned Ok(())
should
return some some result here, even if it’s an error. This operation must be
non-blocking.Source§fn request_chunk_save(
&mut self,
req: ChunkSaveRequest,
) -> Result<(), LevelSourceError>
fn request_chunk_save( &mut self, req: ChunkSaveRequest, ) -> Result<(), LevelSourceError>
Request saving of the chunk at the given position. This operation must be non-blocking.
Auto Trait Implementations§
impl Freeze for WorkerGenLevelSource
impl RefUnwindSafe for WorkerGenLevelSource
impl Send for WorkerGenLevelSource
impl Sync for WorkerGenLevelSource
impl Unpin for WorkerGenLevelSource
impl UnwindSafe for WorkerGenLevelSource
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more