enum ImageFormat
Source: io.joule:12
enum ImageFormatSource: io.joule:12
fn detect_format(data: &[u8]) -> ImageFormatSource: io.joule:37
fn format_from_extension(path: &str) -> ImageFormatDetect format from file extension
Source: io.joule:88
fn load_image(data: &[u8]) -> Result<Image, ImageError>Source: io.joule:120
fn save_image(image: &Image, format: ImageFormat) -> Result<Vec<u8>, ImageError>Source: io.joule:143
enum ImageErrorSource: io.joule:160
fn decode_bmp(data: &[u8]) -> Result<Image, ImageError>Source: io.joule:175
fn encode_bmp(image: &Image) -> Result<Vec<u8>, ImageError>Source: io.joule:252
fn decode_ppm(data: &[u8]) -> Result<Image, ImageError>Source: io.joule:318
fn decode_pgm(data: &[u8]) -> Result<Image, ImageError>Source: io.joule:384
fn decode_pbm(data: &[u8]) -> Result<Image, ImageError>Source: io.joule:435
fn encode_ppm(image: &Image) -> Result<Vec<u8>, ImageError>Source: io.joule:487
fn encode_pgm(image: &Image) -> Result<Vec<u8>, ImageError>Source: io.joule:519
fn encode_pbm(image: &Image) -> Result<Vec<u8>, ImageError>Source: io.joule:539
fn decode_png(data: &[u8]) -> Result<Image, ImageError>Source: io.joule:576
fn encode_png(image: &Image) -> Result<Vec<u8>, ImageError>Source: io.joule:704
fn write_chunk(out: &mut Vec<u8>, chunk_type: &[u8; 4], data: &[u8])Source: io.joule:750
fn inflate(data: &[u8]) -> Result<Vec<u8>, ImageError>Simple inflate (zlib decompression)
Source: io.joule:767
fn deflate_decode(data: &[u8]) -> Result<Vec<u8>, ImageError>Simple deflate decompression
Source: io.joule:790
fn decode_huffman_block(bits: &mut BitReader, out: &mut Vec<u8>, fixed: bool) -> Result<(), ImageError>Source: io.joule:830
fn deflate(data: &[u8]) -> Result<Vec<u8>, ImageError>Simple deflate compression (for PNG encoding)
Source: io.joule:865
struct BitReaderSource: io.joule:903
fn new(data: &'a [u8]) -> SelfSource: io.joule:912
fn read_bits(&mut self, n: u8) -> Result<u32, ImageError>Source: io.joule:922
fn align(&mut self)Source: io.joule:938
fn build_fixed_huffman_tables() -> (Vec<(u16, u8)>, Vec<(u16, u8)>)Source: io.joule:944
fn build_dynamic_huffman_tables(bits: &mut BitReader) -> Result<(Vec<(u16, u8)>, Vec<(u16, u8)>), ImageError>Source: io.joule:971
fn build_huffman_table(lengths: &[u8]) -> Result<Vec<(u16, u8)>, ImageError>Source: io.joule:1031
fn decode_huffman(bits: &mut BitReader, table: &[(u16, u8)]) -> Result<usize, ImageError>Source: io.joule:1063
fn decode_length(bits: &mut BitReader, lit: usize) -> Result<usize, ImageError>Source: io.joule:1083
fn decode_distance(bits: &mut BitReader, code: usize) -> Result<usize, ImageError>Source: io.joule:1104
fn paeth_predictor(a: u8, b: u8, c: u8) -> u8Source: io.joule:1132
fn adler32(data: &[u8]) -> u32Source: io.joule:1147
fn crc32(data: &[u8]) -> u32Source: io.joule:1159
fn read_u16_le(data: &[u8]) -> u16Source: io.joule:1190
fn read_u32_le(data: &[u8]) -> u32Source: io.joule:1194
fn read_i32_le(data: &[u8]) -> i32Source: io.joule:1198
fn read_u32_be(data: &[u8]) -> u32Source: io.joule:1202
fn find_header_end(data: &[u8], num_values: usize) -> Result<usize, ImageError>Source: io.joule:1206
fn test_format_detection()Source: io.joule:1255
fn test_ppm_roundtrip()Source: io.joule:1263
fn test_bmp_roundtrip()Source: io.joule:1291
fn test_adler32()Source: io.joule:1309