pub struct GainMap {Show 16 fields
pub top: f64,
pub left: f64,
pub bottom: f64,
pub right: f64,
pub plane: u32,
pub planes: u32,
pub row_pitch: u32,
pub col_pitch: u32,
pub map_points_v: u32,
pub map_points_h: u32,
pub map_spacing_v: f64,
pub map_spacing_h: f64,
pub map_origin_v: f64,
pub map_origin_h: f64,
pub map_planes: u32,
pub gain: Vec<f32>,
}Expand description
A parsed DNG GainMap opcode (opcode ID 9).
Encodes a spatially-varying multiplicative gain applied to each colour channel to correct for lens vignetting / shading.
Fields§
§top: f64Normalised top edge of the region this map covers (0.0–1.0)
left: f64Normalised left edge
bottom: f64Normalised bottom edge
right: f64Normalised right edge
plane: u32Index of the first plane (colour channel) this map applies to
planes: u32Number of consecutive planes this map applies to
row_pitch: u32Row sub-sampling pitch (every N rows has a map sample)
col_pitch: u32Column sub-sampling pitch
map_points_v: u32Number of map sample rows
map_points_h: u32Number of map sample columns
map_spacing_v: f64Normalised row spacing between consecutive map samples
map_spacing_h: f64Normalised column spacing
map_origin_v: f64Normalised row coordinate of the first map sample
map_origin_h: f64Normalised column coordinate of the first map sample
map_planes: u32Number of planes stored in the map data (1 = shared, 3 = per-channel)
gain: Vec<f32>Gain values, stored in [v][h][plane] order (row-major, f32 each)
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for GainMap
impl RefUnwindSafe for GainMap
impl Send for GainMap
impl Sync for GainMap
impl Unpin for GainMap
impl UnsafeUnpin for GainMap
impl UnwindSafe for GainMap
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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