spandsp 3.0.0
t4_t6_encode_state_s Struct Reference

#include <t4_t6_encode.h>

Public Attributes

t4_row_read_handler_t row_read_handler
 Callback function to read a row of pixels from the image source.
void * row_read_user_data
 Opaque pointer passed to row_read_handler.
int encoding
 The type of compression used.
int image_width
 Width of the current page, in pixels.
int min_bits_per_row
 The minimum number of encoded bits per row. This is a timing thing for hardware FAX machines.
int max_rows_to_next_1d_row
 The current maximum contiguous rows that may be 2D encoded.
int image_length
 Length of the current page, in pixels.
int bytes_per_row
 The current number of bytes per row of uncompressed image data.
int rows_to_next_1d_row
 Number of rows left that can be 2D encoded, before a 1D encoded row must be used.
int row_bits
 The current number of bits in the current encoded row.
bool row_is_2d
 This variable is set if we are treating the current row as a 2D encoded one.
uint32_t tx_bitstream
 Encoded data bits buffer.
int tx_bits
 The number of bits currently in tx_bitstream.
uint8_t * bitstream
 The working chunk of the output bit stream.
int bitstream_iptr
 Input pointer to the output bit stream buffer.
int bitstream_optr
 Output pointer to the output bit stream buffer.
int bit_pos
 Pointer to the bit within the byte containing the next image bit to transmit.
uint32_t * cur_runs
 Black and white run-lengths for the current row.
uint32_t * ref_runs
 Black and white run-lengths for the reference row.
int ref_steps
 The number of runs currently in the reference row.
int min_row_bits
 The minimum bits in any row of the current page. For monitoring only.
int max_row_bits
 The maximum bits in any row of the current page. For monitoring only.
int compressed_image_size
 The size of the compressed image, in bits.
logging_state_t logging
 Error and flow logging control.

Detailed Description

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

Member Data Documentation

◆ bit_pos

int t4_t6_encode_state_s::bit_pos

Pointer to the bit within the byte containing the next image bit to transmit.

Referenced by t4_t6_encode_get_bit(), and t4_t6_encode_restart().

◆ bitstream

uint8_t* t4_t6_encode_state_s::bitstream

The working chunk of the output bit stream.

Referenced by t4_t6_encode_get(), t4_t6_encode_get_bit(), and t4_t6_encode_set_image_width().

◆ bitstream_iptr

int t4_t6_encode_state_s::bitstream_iptr

Input pointer to the output bit stream buffer.

Referenced by t4_t6_encode_get(), t4_t6_encode_get_bit(), t4_t6_encode_image_complete(), and t4_t6_encode_restart().

◆ bitstream_optr

int t4_t6_encode_state_s::bitstream_optr

Output pointer to the output bit stream buffer.

Referenced by t4_t6_encode_get(), t4_t6_encode_get_bit(), t4_t6_encode_image_complete(), and t4_t6_encode_restart().

◆ bytes_per_row

int t4_t6_encode_state_s::bytes_per_row

The current number of bytes per row of uncompressed image data.

Referenced by t4_t6_encode_set_image_width().

◆ compressed_image_size

int t4_t6_encode_state_s::compressed_image_size

The size of the compressed image, in bits.

Referenced by t4_t6_encode_get_compressed_image_size(), and t4_t6_encode_restart().

◆ cur_runs

uint32_t* t4_t6_encode_state_s::cur_runs

Black and white run-lengths for the current row.

Referenced by t4_t6_encode_set_image_width().

◆ encoding

int t4_t6_encode_state_s::encoding

◆ image_length

int t4_t6_encode_state_s::image_length

Length of the current page, in pixels.

Referenced by t4_t6_encode_get_image_length(), and t4_t6_encode_restart().

◆ image_width

int t4_t6_encode_state_s::image_width

Width of the current page, in pixels.

Referenced by t4_t6_encode_get_image_width(), t4_t6_encode_restart(), and t4_t6_encode_set_image_width().

◆ logging

logging_state_t t4_t6_encode_state_s::logging

Error and flow logging control.

Referenced by t4_t6_encode_get_logging_state(), and t4_t6_encode_init().

◆ max_row_bits

int t4_t6_encode_state_s::max_row_bits

The maximum bits in any row of the current page. For monitoring only.

Referenced by t4_t6_encode_restart().

◆ max_rows_to_next_1d_row

int t4_t6_encode_state_s::max_rows_to_next_1d_row

The current maximum contiguous rows that may be 2D encoded.

Referenced by t4_t6_encode_init(), t4_t6_encode_restart(), t4_t6_encode_set_encoding(), and t4_t6_encode_set_max_2d_rows_per_1d_row().

◆ min_bits_per_row

int t4_t6_encode_state_s::min_bits_per_row

The minimum number of encoded bits per row. This is a timing thing for hardware FAX machines.

Referenced by t4_t6_encode_set_encoding(), and t4_t6_encode_set_min_bits_per_row().

◆ min_row_bits

int t4_t6_encode_state_s::min_row_bits

The minimum bits in any row of the current page. For monitoring only.

Referenced by t4_t6_encode_restart().

◆ ref_runs

uint32_t* t4_t6_encode_state_s::ref_runs

Black and white run-lengths for the reference row.

Referenced by t4_t6_encode_restart(), and t4_t6_encode_set_image_width().

◆ ref_steps

int t4_t6_encode_state_s::ref_steps

The number of runs currently in the reference row.

Referenced by t4_t6_encode_restart().

◆ row_bits

int t4_t6_encode_state_s::row_bits

The current number of bits in the current encoded row.

Referenced by t4_t6_encode_restart().

◆ row_is_2d

bool t4_t6_encode_state_s::row_is_2d

This variable is set if we are treating the current row as a 2D encoded one.

Referenced by t4_t6_encode_restart(), t4_t6_encode_set_encoding(), and t4_t6_encode_set_max_2d_rows_per_1d_row().

◆ row_read_handler

t4_row_read_handler_t t4_t6_encode_state_s::row_read_handler

Callback function to read a row of pixels from the image source.

Referenced by t4_t6_encode_init(), and t4_t6_encode_set_row_read_handler().

◆ row_read_user_data

void* t4_t6_encode_state_s::row_read_user_data

Opaque pointer passed to row_read_handler.

Referenced by t4_t6_encode_init(), and t4_t6_encode_set_row_read_handler().

◆ rows_to_next_1d_row

int t4_t6_encode_state_s::rows_to_next_1d_row

Number of rows left that can be 2D encoded, before a 1D encoded row must be used.

Referenced by t4_t6_encode_restart(), t4_t6_encode_set_encoding(), and t4_t6_encode_set_max_2d_rows_per_1d_row().

◆ tx_bits

int t4_t6_encode_state_s::tx_bits

The number of bits currently in tx_bitstream.

Referenced by t4_t6_encode_restart().

◆ tx_bitstream

uint32_t t4_t6_encode_state_s::tx_bitstream

Encoded data bits buffer.

Referenced by t4_t6_encode_restart().


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