spandsp 0.0.6
t4_t6_decode_state_s Struct Reference

#include <t4_t6_decode.h>

Public Attributes

t4_row_write_handler_t row_write_handler
 The type of compression used between the FAX machines.
void * row_write_user_data
 Opaque pointer passed to row_write_handler.
int last_row_starts_at
 A pointer into the image buffer indicating where the last row begins.
int consecutive_eols
 This variable is used to count the consecutive EOLS we have seen. If it reaches six, this is the end of the image. It is initially set to -1 for 1D and 2D decoding, as an indicator that we must wait for the first EOL, before decoding any image data.
int a0
 The reference or starting changing element on the coding line. At the start of the coding line, a0 is set on an imaginary white changing element situated just before the first element on the line. During the coding of the coding line, the position of a0 is defined by the previous coding mode. (See T.4/4.2.1.3.2.).
int b1
 The first changing element on the reference line to the right of a0 and of opposite colour to a0.
int run_length
 The length of the in-progress run of black or white.
int black_white
 2D horizontal mode control.
int its_black
 TRUE if the current run is black.
int a_cursor
 The current step into the current row run-lengths buffer.
int b_cursor
 The current step into the reference row run-lengths buffer.
uint32_t rx_bitstream
 Incoming bit buffer for decompression.
int rx_bits
 The number of bits currently in rx_bitstream.
int rx_skip_bits
 The number of bits to be skipped before trying to match the next code word.
int curr_bad_row_run
 Decoded pixel buffer.
int longest_bad_row_run
 The longest run of consecutive bad rows seen in the current page.
int bad_rows
 The total number of bad rows in the current page.

Detailed Description

T.4 1D, T4 2D and T6 decompressor state.

Member Data Documentation

◆ a0

int t4_t6_decode_state_s::a0

The reference or starting changing element on the coding line. At the start of the coding line, a0 is set on an imaginary white changing element situated just before the first element on the line. During the coding of the coding line, the position of a0 is defined by the previous coding mode. (See T.4/4.2.1.3.2.).

Referenced by t4_rx_start_page().

◆ a_cursor

int t4_t6_decode_state_s::a_cursor

The current step into the current row run-lengths buffer.

Referenced by t4_rx_start_page().

◆ b1

int t4_t6_decode_state_s::b1

The first changing element on the reference line to the right of a0 and of opposite colour to a0.

Referenced by t4_rx_start_page().

◆ b_cursor

int t4_t6_decode_state_s::b_cursor

The current step into the reference row run-lengths buffer.

Referenced by t4_rx_start_page().

◆ bad_rows

int t4_t6_decode_state_s::bad_rows

The total number of bad rows in the current page.

Referenced by t4_rx_get_transfer_statistics(), t4_rx_start_page(), and t4_tx_get_transfer_statistics().

◆ black_white

int t4_t6_decode_state_s::black_white

2D horizontal mode control.

Referenced by t4_rx_start_page().

◆ consecutive_eols

int t4_t6_decode_state_s::consecutive_eols

This variable is used to count the consecutive EOLS we have seen. If it reaches six, this is the end of the image. It is initially set to -1 for 1D and 2D decoding, as an indicator that we must wait for the first EOL, before decoding any image data.

Referenced by t4_rx_end_page(), and t4_rx_start_page().

◆ curr_bad_row_run

int t4_t6_decode_state_s::curr_bad_row_run

Decoded pixel buffer.

The number of bits currently in pixel_stream.

Current pixel row number.

The current number of consecutive bad rows.

Referenced by t4_rx_end_page(), and t4_rx_start_page().

◆ its_black

int t4_t6_decode_state_s::its_black

TRUE if the current run is black.

Referenced by t4_rx_start_page().

◆ last_row_starts_at

int t4_t6_decode_state_s::last_row_starts_at

A pointer into the image buffer indicating where the last row begins.

Referenced by t4_rx_start_page().

◆ longest_bad_row_run

int t4_t6_decode_state_s::longest_bad_row_run

The longest run of consecutive bad rows seen in the current page.

Referenced by t4_rx_end_page(), t4_rx_get_transfer_statistics(), t4_rx_start_page(), and t4_tx_get_transfer_statistics().

◆ row_write_handler

t4_row_write_handler_t t4_t6_decode_state_s::row_write_handler

The type of compression used between the FAX machines.

Width of the current page, in pixels.

Callback function to write a row of pixels to the image destination.

Referenced by t4_rx_end_page(), and t4_rx_set_row_write_handler().

◆ row_write_user_data

void* t4_t6_decode_state_s::row_write_user_data

Opaque pointer passed to row_write_handler.

Referenced by t4_rx_end_page(), and t4_rx_set_row_write_handler().

◆ run_length

int t4_t6_decode_state_s::run_length

The length of the in-progress run of black or white.

Referenced by t4_rx_start_page().

◆ rx_bits

int t4_t6_decode_state_s::rx_bits

The number of bits currently in rx_bitstream.

Referenced by t4_rx_end_page(), and t4_rx_start_page().

◆ rx_bitstream

uint32_t t4_t6_decode_state_s::rx_bitstream

Incoming bit buffer for decompression.

Referenced by t4_rx_end_page(), and t4_rx_start_page().

◆ rx_skip_bits

int t4_t6_decode_state_s::rx_skip_bits

The number of bits to be skipped before trying to match the next code word.

Referenced by t4_rx_end_page(), and t4_rx_start_page().


The documentation for this struct was generated from the following file: