[][src]Struct jpegxl_sys::JpegxlPixelFormat

#[repr(C)]pub struct JpegxlPixelFormat {
    pub num_channels: size_t,
    pub data_type: JpegxlDataType,
}

Data type for the sample values per channel per pixel for the output buffer for pixels. This is not necessarily the same as the data type encoded in the codestream. The channels are interleaved per pixel. The pixels are organized row by row, left to right, top to bottom. TODO(lode): support padding / alignment (row stride) TODO(lode): support outputting >8-bit data into uint8_t (and endianness) TODO(lode): support non-interleaved (may be a no-op here, involves getting single channels separately instead) TODO(lode): support different channel orders if needed (RGB, BGR, ...)

Fields

num_channels: size_t

Amount of channels available in a pixel buffer. 1: single-channel data, e.g. grayscale 2: single-channel + alpha 3: trichromatic, e.g. RGB 4: trichromatic + alpha TODO(lode): this needs finetuning. It is not yet defined how the user chooses output color space. CMYK+alpha needs 5 channels.

data_type: JpegxlDataType

Data type of each channel.

Trait Implementations

impl Clone for JpegxlPixelFormat[src]

impl Copy for JpegxlPixelFormat[src]

impl Debug for JpegxlPixelFormat[src]

impl NewUninit for JpegxlPixelFormat[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.