#[non_exhaustive]pub enum TileLayout {
Regular {
tile_width: u32,
tile_height: u32,
tiles_across: u64,
tiles_down: u64,
},
Irregular {
tile_advance: (f64, f64),
extra_tiles: (u32, u32, u32, u32),
tiles: HashMap<(i64, i64), TileEntry>,
},
WholeLevel {
width: u64,
height: u64,
virtual_tile_width: u32,
virtual_tile_height: u32,
},
}Expand description
How tiles are organized at a given level.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Regular
Regular grid — fixed tile size, row-major.
Irregular
Per-tile offsets (Ventana BIF, some DICOM). Geometry follows compatibility tilemap semantics and uses floating-point tile advances/offsets plus conservative extra-tile expansion.
Fields
WholeLevel
Entire level is one contiguous image (NDPI giant JPEG). Backend exposes it as a virtual tile grid.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TileLayout
impl RefUnwindSafe for TileLayout
impl Send for TileLayout
impl Sync for TileLayout
impl Unpin for TileLayout
impl UnsafeUnpin for TileLayout
impl UnwindSafe for TileLayout
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more