t38_gateway_state_t Struct Reference

#include <t38_gateway.h>

List of all members.

Public Attributes

t38_core_state_t t38
int supported_modems
 A bit mask of the currently supported modem types.
int use_tep
 Use talker echo protection when transmitting.
int ecm_allowed
 TRUE if ECM FAX mode is allowed through the gateway.
int suppress_nsx
 TRUE if the NSF, NSC, and NSS are to be suppressed by altering their contents to something the far end will not recognise.
int transmit_on_idle
 If TRUE, transmit silence when there is nothing else to transmit. If FALSE return only the actual generated audio. Note that this only affects untimed silences. Timed silences (e.g. the 75ms silence between V.21 and a high speed modem) will alway be transmitted as silent audio.
int count_page_on_mcf
 TRUE if we should count the next MCF as a page end, else FALSE.
int pages_confirmed
 The number of pages for which a confirm (MCF) message was returned.
uint8_t hdlc_buf [T38_TX_HDLC_BUFS][T38_MAX_HDLC_LEN]
 HDLC message buffers.
int hdlc_len [T38_TX_HDLC_BUFS]
 HDLC message lengths.
int hdlc_flags [T38_TX_HDLC_BUFS]
 HDLC message status flags.
int hdlc_contents [T38_TX_HDLC_BUFS]
 HDLC buffer contents.
int hdlc_in
 HDLC buffer number for input.
int hdlc_out
 HDLC buffer number for output.
uint16_t crc
 Progressively calculated CRC for HDLC messaging received from a modem.
uint8_t rx_data [T38_RX_BUF_LEN]
 non-ECM and HDLC modem receive data buffer
int rx_data_ptr
uint8_t non_ecm_tx_data [T38_NON_ECM_TX_BUF_LEN]
 non-ECM modem transmit data buffer
int non_ecm_tx_in_ptr
int non_ecm_tx_out_ptr
int non_ecm_tx_latest_eol_ptr
 The location of the most recent EOL marker in the non-ECM data buffer.
unsigned int non_ecm_bit_stream
uint8_t non_ecm_flow_control_fill_octet
 The non-ECM flow control fill octet (0xFF before the first data, and 0x00 once data has started).
int non_ecm_at_initial_all_ones
 TRUE if we are in the initial all ones part of non-ECM transmission.
int non_ecm_data_finished
 TRUE is the end of non-ECM data indication has been received.
unsigned int non_ecm_rx_bit_stream
 The current octet being sent as non-ECM data.
unsigned int non_ecm_tx_octet
int non_ecm_bit_no
 The current bit number in the current non-ECM octet.
int non_ecm_in_octets
int non_ecm_out_octets
int non_ecm_in_rows
int non_ecm_out_rows
int non_ecm_flow_control_fill_octets
 A count of the number of non-ECM fill octets generated for flow control control purposes.
int current_rx_field_class
 the current class of field being received - i.e. none, non-ECM or HDLC
int in_progress_rx_indicator
 The T.38 indicator currently in use.
int current_tx_data_type
 The current T.38 data type being sent.
int ecm_mode
 TRUE if we are in error correcting (ECM) mode.
int fast_bit_rate
 The current bit rate for the fast modem.
int fast_modem
 The current fast modem type.
int tcf_mode_predictable_modem_start
 TRUE if between DCS and TCF, and we want the fast image modem to start in the T.38 data at a predictable time from the end of the V.21 signal.
int rx_signal_present
 TRUE if a carrier is present. Otherwise FALSE.
int rx_trained
 TRUE if a modem has trained correctly.
tone_gen_state_t tone_gen
 A tone generator context used to generate supervisory tones during FAX handling.
hdlc_rx_state_t hdlcrx
 An HDLC context used when receiving HDLC messages.
hdlc_tx_state_t hdlctx
 HDLC data used when transmitting HDLC messages.
fsk_tx_state_t v21_tx
 A V.21 FSK modem context used when transmitting HDLC over V.21 messages.
fsk_rx_state_t v21_rx
 A V.21 FSK modem context used when receiving HDLC over V.21 messages.
v17_tx_state_t v17_tx
 A V.17 modem context used when sending FAXes at 7200bps, 9600bps 12000bps or 14400bps.
v17_rx_state_t v17_rx
 A V.29 modem context used when receiving FAXes at 7200bps, 9600bps 12000bps or 14400bps.
v29_tx_state_t v29_tx
 A V.29 modem context used when sending FAXes at 7200bps or 9600bps.
v29_rx_state_t v29_rx
 A V.29 modem context used when receiving FAXes at 7200bps or 9600bps.
v27ter_tx_state_t v27ter_tx
 A V.27ter modem context used when sending FAXes at 2400bps or 4800bps.
v27ter_rx_state_t v27ter_rx
 A V.27ter modem context used when receiving FAXes at 2400bps or 4800bps.
dc_restore_state_t dc_restore
silence_gen_state_t silence_gen
 Used to insert timed silences.
span_rx_handler_t * immediate_rx_handler
 The immediately active receive signal handler, which may hop between rx_handler and dummy_rx().
span_rx_handler_t * rx_handler
 The current receive signal handler.
void * rx_user_data
 An opaque pointer, passed to rx_handler.
span_tx_handler_t * tx_handler
 The current transmit signal handler.
void * tx_user_data
 An opaque pointer, passed to tx_handler.
span_tx_handler_t * next_tx_handler
 The transmit signal handler to be used when the current one has finished sending.
void * next_tx_user_data
 An opaque pointer, passed to next_tx_handler.
int octets_per_data_packet
 The number of octets to send in each image packet (non-ECM or ECM) at the current rate and the current specified packet interval.
int fast_rx_active
 The type of fast receive modem currently active, which may be T38_NONE.
int samples_to_timeout
 The number of samples until the next timeout event.
int image_data_mode
 TRUE if in image data mode (as opposed to TCF mode).
int short_train
 TRUE if in image data modem is to use short training.
int corrupt_the_frame_to_t38
 TRUE if we need to corrupt the HDLC frame in progress, so the receiver cannot interpret it.
int corrupt_the_frame_from_t38
 TRUE if we need to corrupt the HDLC frame in progress, so the receiver cannot interpret it.
int current_rx_type
 The currently select receiver type.
int current_tx_type
 The currently select transmitter type.
int fax_audio_rx_log
 Audio logging file handles.
int fax_audio_tx_log
logging_state_t logging
 Error and flow logging control.


Detailed Description

T.38 gateway state.

Member Data Documentation

Core T.38 support

Referenced by t38_gateway_init(), and t38_gateway_set_supported_modems().


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

Generated on Sun Sep 27 19:22:11 2009 for libspandsp by  doxygen 1.5.9