Main Page | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

t31.c File Reference

#include <inttypes.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <time.h>
#include <memory.h>
#include <string.h>
#include <ctype.h>
#include "floating_fudge.h"
#include <assert.h>
#include <tiffio.h>
#include "spandsp/telephony.h"
#include "spandsp/logging.h"
#include "spandsp/bit_operations.h"
#include "spandsp/dc_restore.h"
#include "spandsp/queue.h"
#include "spandsp/power_meter.h"
#include "spandsp/complex.h"
#include "spandsp/tone_detect.h"
#include "spandsp/tone_generate.h"
#include "spandsp/async.h"
#include "spandsp/crc.h"
#include "spandsp/hdlc.h"
#include "spandsp/silence_gen.h"
#include "spandsp/fsk.h"
#include "spandsp/v29tx.h"
#include "spandsp/v29rx.h"
#include "spandsp/v27ter_tx.h"
#include "spandsp/v27ter_rx.h"
#include "spandsp/v17tx.h"
#include "spandsp/v17rx.h"
#include "spandsp/super_tone_rx.h"
#include "spandsp/modem_connect_tones.h"
#include "spandsp/t4.h"
#include "spandsp/t30.h"
#include "spandsp/t30_logging.h"
#include "spandsp/t38_core.h"
#include "spandsp/at_interpreter.h"
#include "spandsp/fax_modems.h"
#include "spandsp/t31.h"
#include "spandsp/t30_fcf.h"
#include "spandsp/private/logging.h"
#include "spandsp/private/t38_core.h"
#include "spandsp/private/fsk.h"
#include "spandsp/private/v17tx.h"
#include "spandsp/private/v17rx.h"
#include "spandsp/private/v27ter_tx.h"
#include "spandsp/private/v27ter_rx.h"
#include "spandsp/private/v29tx.h"
#include "spandsp/private/v29rx.h"
#include "spandsp/private/modem_connect_tones.h"
#include "spandsp/private/hdlc.h"
#include "spandsp/private/fax_modems.h"
#include "spandsp/private/at_interpreter.h"
#include "spandsp/private/t31.h"

Defines

#define MS_PER_TX_CHUNK   30
#define INDICATOR_TX_COUNT   3
#define DATA_TX_COUNT   1
#define DATA_END_TX_COUNT   3
#define DEFAULT_DTE_TIMEOUT   5
#define MAX_OCTETS_PER_UNPACED_CHUNK   300
#define MID_RX_TIMEOUT   15000
#define HDLC_FRAMING_OK_THRESHOLD   5

Typedefs

typedef const char *(* at_cmd_service_t )(t31_state_t *s, const char *cmd)

Enumerations

enum  { ETX = 0x03, DLE = 0x10, SUB = 0x1A }
enum  {
  DISBIT1 = 0x01, DISBIT2 = 0x02, DISBIT3 = 0x04, DISBIT4 = 0x08,
  DISBIT5 = 0x10, DISBIT6 = 0x20, DISBIT7 = 0x40, DISBIT8 = 0x80
}
enum  {
  T31_NONE = -1, T31_FLUSH = 0, T31_SILENCE_TX, T31_SILENCE_RX,
  T31_CED_TONE, T31_CNG_TONE, T31_NOCNG_TONE, T31_V21_TX,
  T31_V17_TX, T31_V27TER_TX, T31_V29_TX, T31_V21_RX,
  T31_V17_RX, T31_V27TER_RX, T31_V29_RX
}
enum  { T38_CHUNKING_MERGE_FCS_WITH_DATA = 0x0001, T38_CHUNKING_WHOLE_FRAMES = 0x0002, T38_CHUNKING_ALLOW_TEP_TIME = 0x0004 }
enum  {
  T38_TIMED_STEP_NONE = 0, T38_TIMED_STEP_NON_ECM_MODEM = 0x10, T38_TIMED_STEP_NON_ECM_MODEM_2 = 0x11, T38_TIMED_STEP_NON_ECM_MODEM_3 = 0x12,
  T38_TIMED_STEP_NON_ECM_MODEM_4 = 0x13, T38_TIMED_STEP_NON_ECM_MODEM_5 = 0x14, T38_TIMED_STEP_HDLC_MODEM = 0x20, T38_TIMED_STEP_HDLC_MODEM_2 = 0x21,
  T38_TIMED_STEP_HDLC_MODEM_3 = 0x22, T38_TIMED_STEP_HDLC_MODEM_4 = 0x23, T38_TIMED_STEP_HDLC_MODEM_5 = 0x24, T38_TIMED_STEP_FAKE_HDLC_MODEM = 0x30,
  T38_TIMED_STEP_FAKE_HDLC_MODEM_2 = 0x31, T38_TIMED_STEP_FAKE_HDLC_MODEM_3 = 0x32, T38_TIMED_STEP_FAKE_HDLC_MODEM_4 = 0x33, T38_TIMED_STEP_FAKE_HDLC_MODEM_5 = 0x34,
  T38_TIMED_STEP_CED = 0x40, T38_TIMED_STEP_CED_2 = 0x41, T38_TIMED_STEP_CED_3 = 0x42, T38_TIMED_STEP_CNG = 0x50,
  T38_TIMED_STEP_CNG_2 = 0x51, T38_TIMED_STEP_PAUSE = 0x60
}

Functions

 SPAN_DECLARE (int)
 Release a V.8 context.
 SPAN_DECLARE (void)
 Cleanup a T.30 context if the call terminates.
 SPAN_DECLARE (logging_state_t *)
 Get a pointer to the logging context associated with a T.38 context.
 SPAN_DECLARE (t38_core_state_t *)
 Get a pointer to the T.38 core IFP packet engine associated with a T.38 context.
 SPAN_DECLARE (t31_state_t *)

Detailed Description


Function Documentation

SPAN_DECLARE t38_core_state_t  ) 
 

Get a pointer to the T.38 core IFP packet engine associated with a T.38 context.

Get a pointer to the T.38 core IFP packet engine associated with a gateway mode T.38 context.

Parameters:
s The T.38 context.
Returns:
A pointer to the T.38 core context, or NULL.

SPAN_DECLARE logging_state_t  ) 
 

Get a pointer to the logging context associated with a T.38 context.

Get a pointer to the logging context associated with a FAX context.

Parameters:
s The FAX context.
Returns:
A pointer to the logging context, or NULL.

SPAN_DECLARE void   ) 
 

Cleanup a T.30 context if the call terminates.

Log the list of supported modulations.

Parameters:
s The V.8 context.
modulation_schemes The list of supported modulations.

SPAN_DECLARE int   ) 
 

Release a V.8 context.

Compress a block of octets.

Parameters:
s The V.42bis context.
buf The data to be compressed.
len The length of the data buffer.
Returns:
0


Generated on Fri Aug 28 20:12:28 2009 for spandsp by  doxygen 1.3.9.1