pub struct StreamingDecoder {Show 15 fields
    state: State,
    internal_buffer: [u8; 9],
    unused_internal_buffer_len: u8,
    lzw_reader: LzwReader,
    skip_frame_decoding: bool,
    check_frame_consistency: bool,
    allow_unknown_blocks: bool,
    memory_limit: MemoryLimit,
    version: Version,
    width: u16,
    height: u16,
    global_color_table: Vec<u8>,
    ext: ExtensionData,
    current: Option<Frame<'static>>,
    header_end_reached: bool,
}Expand description
GIF decoder which emits low-level events for items in the GIF file
To just get GIF frames, use crate::Decoder instead.
Fields§
§state: State§internal_buffer: [u8; 9]Input bytes are collected here if update got buf smaller than the minimum required
unused_internal_buffer_len: u8§lzw_reader: LzwReader§skip_frame_decoding: bool§check_frame_consistency: bool§allow_unknown_blocks: bool§memory_limit: MemoryLimit§version: Version§width: u16§height: u16§global_color_table: Vec<u8>§ext: ExtensionDataext buffer
current: Option<Frame<'static>>Frame data
header_end_reached: boolNeeds to emit HeaderEnd once
Implementations§
Source§impl StreamingDecoder
 
impl StreamingDecoder
pub(crate) fn with_options(options: &DecodeOptions) -> Self
Sourcepub fn update(
    &mut self,
    buf: &[u8],
    write_into: &mut OutputBuffer<'_>,
) -> Result<(usize, Decoded), DecodingError>
 
pub fn update( &mut self, buf: &[u8], write_into: &mut OutputBuffer<'_>, ) -> Result<(usize, Decoded), DecodingError>
Updates the internal state of the decoder.
Returns the number of bytes consumed from the input buffer and the last decoding result.
Sourcepub fn last_ext(&self) -> (AnyExtension, &[u8], bool)
 
pub fn last_ext(&self) -> (AnyExtension, &[u8], bool)
Returns the data of the last extension that has been decoded.
Sourcepub fn current_frame_mut(&mut self) -> &mut Frame<'static>
 
pub fn current_frame_mut(&mut self) -> &mut Frame<'static>
Current frame info as a mutable ref.
Sourcepub fn current_frame(&self) -> &Frame<'static>
 
pub fn current_frame(&self) -> &Frame<'static>
Current frame info as a ref.
Sourcefn try_current_frame(&mut self) -> Result<&mut Frame<'static>, DecodingError>
 
fn try_current_frame(&mut self) -> Result<&mut Frame<'static>, DecodingError>
Current frame info as a mutable ref.
Sourcepub fn version(&self) -> Version
 
pub fn version(&self) -> Version
The version number of the GIF standard used in this image.
We suppose a minimum of V87a compatibility. This value will be reported until we have
read the version information in the magic header bytes.
fn next_state( &mut self, buf: &[u8], write_into: &mut OutputBuffer<'_>, ) -> Result<(usize, Decoded), DecodingError>
fn read_control_extension(&mut self) -> Result<(), DecodingError>
fn add_frame(&mut self)
Auto Trait Implementations§
impl Freeze for StreamingDecoder
impl !RefUnwindSafe for StreamingDecoder
impl Send for StreamingDecoder
impl !Sync for StreamingDecoder
impl Unpin for StreamingDecoder
impl !UnwindSafe for StreamingDecoder
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