spandsp 3.0.0
t38_non_ecm_buffer_state_s Struct Reference

A flow controlled non-ECM image data buffer, for buffering T.38 to analogue modem data. More...

#include <t38_non_ecm_buffer.h>

Public Attributes

int min_bits_per_row
 Minimum number of bits per row, used when fill bits are being deleted on the link, and restored at the emitting gateway.
uint8_t data [T38_NON_ECM_TX_BUF_LEN]
 non-ECM modem transmit data buffer.
int in_ptr
 The current write point in the buffer.
int out_ptr
 The current read point in the buffer.
int latest_eol_ptr
 The location of the most recent EOL marker in the buffer.
int row_bits
 The number of bits to date in the current row, used when min_row_bits is to be applied.
unsigned int bit_stream
 The bit stream entering the buffer, used to detect EOLs.
uint8_t flow_control_fill_octet
 The non-ECM flow control fill octet (0xFF before the first data, and 0x00 once data has started).
int input_phase
 A code for the phase of input buffering, from initial all ones to completion.
bool data_finished
 True is the end of non-ECM data indication has been received.
unsigned int octet
 The current octet being transmitted from the buffer.
int bit_no
 The current bit number in the current non-ECM octet.
bool image_data_mode
 True if in image data mode, as opposed to TCF mode.
int in_octets
 The number of octets input to the buffer.
int in_rows
 The number of rows input to the buffer.
int min_row_bits_fill_octets
 The number of non-ECM fill octets generated for minimum row bits purposes.
int out_octets
 The number of octets output from the buffer.
int out_rows
 The number of rows output from the buffer.
int flow_control_fill_octets
 The number of non-ECM fill octets generated for flow control purposes.

Detailed Description

A flow controlled non-ECM image data buffer, for buffering T.38 to analogue modem data.

Member Data Documentation

◆ bit_no

int t38_non_ecm_buffer_state_s::bit_no

The current bit number in the current non-ECM octet.

Referenced by t38_non_ecm_buffer_get_bit().

◆ bit_stream

unsigned int t38_non_ecm_buffer_state_s::bit_stream

The bit stream entering the buffer, used to detect EOLs.

Referenced by t38_non_ecm_buffer_inject().

◆ data

uint8_t t38_non_ecm_buffer_state_s::data[T38_NON_ECM_TX_BUF_LEN]

non-ECM modem transmit data buffer.

Referenced by t38_non_ecm_buffer_get_bit(), and t38_non_ecm_buffer_inject().

◆ data_finished

bool t38_non_ecm_buffer_state_s::data_finished

True is the end of non-ECM data indication has been received.

Referenced by t38_non_ecm_buffer_get_bit(), and t38_non_ecm_buffer_push().

◆ flow_control_fill_octet

uint8_t t38_non_ecm_buffer_state_s::flow_control_fill_octet

The non-ECM flow control fill octet (0xFF before the first data, and 0x00 once data has started).

Referenced by t38_non_ecm_buffer_get_bit(), and t38_non_ecm_buffer_inject().

◆ flow_control_fill_octets

int t38_non_ecm_buffer_state_s::flow_control_fill_octets

The number of non-ECM fill octets generated for flow control purposes.

Referenced by t38_non_ecm_buffer_get_bit(), and t38_non_ecm_buffer_report_output_status().

◆ image_data_mode

bool t38_non_ecm_buffer_state_s::image_data_mode

True if in image data mode, as opposed to TCF mode.

Referenced by t38_non_ecm_buffer_init(), and t38_non_ecm_buffer_set_mode().

◆ in_octets

int t38_non_ecm_buffer_state_s::in_octets

The number of octets input to the buffer.

Referenced by t38_non_ecm_buffer_inject(), and t38_non_ecm_buffer_report_input_status().

◆ in_ptr

int t38_non_ecm_buffer_state_s::in_ptr

The current write point in the buffer.

Referenced by t38_non_ecm_buffer_inject(), and t38_non_ecm_buffer_push().

◆ in_rows

int t38_non_ecm_buffer_state_s::in_rows

The number of rows input to the buffer.

Referenced by t38_non_ecm_buffer_inject(), and t38_non_ecm_buffer_report_input_status().

◆ input_phase

int t38_non_ecm_buffer_state_s::input_phase

A code for the phase of input buffering, from initial all ones to completion.

Referenced by t38_non_ecm_buffer_inject().

◆ latest_eol_ptr

int t38_non_ecm_buffer_state_s::latest_eol_ptr

The location of the most recent EOL marker in the buffer.

Referenced by t38_non_ecm_buffer_get_bit(), t38_non_ecm_buffer_inject(), and t38_non_ecm_buffer_push().

◆ min_bits_per_row

int t38_non_ecm_buffer_state_s::min_bits_per_row

Minimum number of bits per row, used when fill bits are being deleted on the link, and restored at the emitting gateway.

Referenced by t38_non_ecm_buffer_init(), t38_non_ecm_buffer_inject(), and t38_non_ecm_buffer_set_mode().

◆ min_row_bits_fill_octets

int t38_non_ecm_buffer_state_s::min_row_bits_fill_octets

The number of non-ECM fill octets generated for minimum row bits purposes.

Referenced by t38_non_ecm_buffer_inject(), and t38_non_ecm_buffer_report_input_status().

◆ octet

unsigned int t38_non_ecm_buffer_state_s::octet

The current octet being transmitted from the buffer.

Referenced by t38_non_ecm_buffer_get_bit().

◆ out_octets

int t38_non_ecm_buffer_state_s::out_octets

The number of octets output from the buffer.

Referenced by t38_non_ecm_buffer_get_bit(), and t38_non_ecm_buffer_report_output_status().

◆ out_ptr

int t38_non_ecm_buffer_state_s::out_ptr

The current read point in the buffer.

Referenced by t38_non_ecm_buffer_get_bit().

◆ out_rows

int t38_non_ecm_buffer_state_s::out_rows

The number of rows output from the buffer.

Referenced by t38_non_ecm_buffer_report_output_status().

◆ row_bits

int t38_non_ecm_buffer_state_s::row_bits

The number of bits to date in the current row, used when min_row_bits is to be applied.

Referenced by t38_non_ecm_buffer_inject().


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