Skip to main content

process_streaming

Function process_streaming 

Source
pub fn process_streaming<R, F>(
    raster: &ChunkedRaster<R>,
    kernel: F,
) -> Result<Vec<f32>, RasterError>
Expand description

Applies a kernel function chunk-by-chunk and stitches the results into a full Vec<f32> output raster.

The kernel closure receives a Chunk (which includes surrounding halo cells in its data field) and must return exactly chunk.width * chunk.height values (the core region, without halo) in row-major order. Results are assembled at the correct position in the output raster.

§Errors

Propagates any RasterError emitted by the iterator. Also panics (via assert_eq!) if the kernel returns a vector of the wrong length — this is an API contract violation in the caller’s closure.