Struct laz::laszip::parallel::ParLasZipDecompressor
source · pub struct ParLasZipDecompressor<R> { /* private fields */ }
Expand description
Laszip decompressor, that can decompress data using multiple threads
Supports both fixed-size and variable-size chunks.
Implementations§
source§impl<R: Read + Seek> ParLasZipDecompressor<R>
impl<R: Read + Seek> ParLasZipDecompressor<R>
sourcepub fn new(source: R, vlr: LazVlr) -> Result<Self>
pub fn new(source: R, vlr: LazVlr) -> Result<Self>
Creates a new decompressor
Fails if no chunk table could be found.
The created decompressor will decompress all data
sourcepub fn selective(
source: R,
vlr: LazVlr,
selection: DecompressionSelection
) -> Result<Self>
pub fn selective(
source: R,
vlr: LazVlr,
selection: DecompressionSelection
) -> Result<Self>
Creates a new decompressor, that will only decompress
fields that are selected by the selection
.
Fails if not chunk table could be found
sourcepub fn decompress_many(&mut self, out: &mut [u8]) -> Result<()>
pub fn decompress_many(&mut self, out: &mut [u8]) -> Result<()>
Decompresses many points using multiple threads
For this function to actually use multiple threads, the points
buffer shall hold more points that the vlr’s chunk_size
.
sourcepub fn seek(&mut self, index: u64) -> Result<()>
pub fn seek(&mut self, index: u64) -> Result<()>
Seeks to the position of the point at the given index