spandsp 0.0.6
v22bis_state_s Struct Reference

#include <v22bis.h>

Public Attributes

int bit_rate
 The maximum permitted bit rate of the modem. Valid values are 1200 and 2400.
 
int calling_party
 TRUE is this is the calling side modem.
 
get_bit_func_t get_bit
 The callback function used to get the next bit to be transmitted.
 
void * get_bit_user_data
 A user specified opaque pointer passed to the get_bit callback routine.
 
put_bit_func_t put_bit
 The callback function used to put each bit received.
 
void * put_bit_user_data
 A user specified opaque pointer passed to the put_bit callback routine.
 
modem_status_func_t status_handler
 The callback function used to report modem status changes.
 
void * status_user_data
 A user specified opaque pointer passed to the status function.
 
int negotiated_bit_rate
 
struct {
   int   rrc_filter_step
 Current offset into the RRC pulse shaping filter buffer.
 
   uint32_t   scramble_reg
 The register for the data scrambler.
 
   int   scrambler_pattern_count
 A counter for the number of consecutive bits of repeating pattern through the scrambler.
 
   int   training
 0 if receiving user data. A training stage value during training
 
   int   training_count
 A count of how far through the current training step we are.
 
   int   signal_present
 >0 if a signal above the minimum is present. It may or may not be a V.22bis signal.
 
   uint32_t   carrier_phase
 The current phase of the carrier (i.e. the DDS parameter).
 
   int32_t   carrier_phase_rate
 The update rate for the phase of the carrier (i.e. the DDS increment).
 
   qam_report_handler_t   qam_report
 A callback function which may be enabled to report every symbol's constellation position.
 
   void *   qam_user_data
 A user specified opaque pointer passed to the qam_report callback routine.
 
   power_meter_t   rx_power
 A power meter, to measure the HPF'ed signal power in the channel.
 
   int32_t   carrier_on_power
 The power meter level at which carrier on is declared.
 
   int32_t   carrier_off_power
 The power meter level at which carrier off is declared.
 
   int   constellation_state
 
   float   agc_scaling
 The scaling factor accessed by the AGC algorithm.
 
   float   rrc_filter [27]
 The root raised cosine (RRC) pulse shaping filter buffer.
 
   float   eq_delta
 The current delta factor for updating the equalizer coefficients.
 
   complexf_t   eq_coeff [2 *7+1]
 The adaptive equalizer coefficients.
 
   complexf_t   eq_buf [15+1]
 The equalizer signal buffer.
 
   float   training_error
 A measure of how much mismatch there is between the real constellation, and the decoded symbol positions.
 
   float   carrier_track_p
 The proportional part of the carrier tracking filter.
 
   float   carrier_track_i
 The integral part of the carrier tracking filter.
 
   int   eq_step
 Current offset into the equalizer buffer.
 
   int   eq_put_step
 Current write offset into the equalizer buffer.
 
   int   gardner_integrate
 Integration variable for damping the Gardner algorithm tests.
 
   int   gardner_step
 Current step size of Gardner algorithm integration.
 
   int   total_baud_timing_correction
 The total symbol timing correction since the carrier came up. This is only for performance analysis purposes.
 
   int   baud_phase
 The current fractional phase of the baud timing.
 
   int   sixteen_way_decisions
 
   int   pattern_repeats
 
   int   last_raw_bits
 
rx
 
struct {
   float   guard_level
 The guard tone level.
 
   float   gain
 The gain factor needed to achieve the specified output power.
 
   complexf_t   rrc_filter [2 *9]
 The root raised cosine (RRC) pulse shaping filter buffer.
 
   int   rrc_filter_step
 Current offset into the RRC pulse shaping filter buffer.
 
   uint32_t   scramble_reg
 The register for the data scrambler.
 
   int   scrambler_pattern_count
 A counter for the number of consecutive bits of repeating pattern through the scrambler.
 
   int   training
 0 if transmitting user data. A training stage value during training
 
   int   training_count
 A counter used to track progress through sending the training sequence.
 
   uint32_t   carrier_phase
 The current phase of the carrier (i.e. the DDS parameter).
 
   int32_t   carrier_phase_rate
 The update rate for the phase of the carrier (i.e. the DDS increment).
 
   uint32_t   guard_phase
 The current phase of the guard tone (i.e. the DDS parameter).
 
   int32_t   guard_phase_rate
 The update rate for the phase of the guard tone (i.e. the DDS increment).
 
   int   baud_phase
 The current fractional phase of the baud timing.
 
   int   constellation_state
 The code number for the current position in the constellation.
 
   int   shutdown
 An indicator to mark that we are tidying up to stop transmission.
 
   get_bit_func_t   current_get_bit
 The get_bit function in use at any instant.
 
tx
 
logging_state_t logging
 Error and flow logging control.
 

Detailed Description

V.22bis modem descriptor. This defines the working state for a single instance of a V.22bis modem.

Member Data Documentation

◆ training

int v22bis_state_s::training

0 if receiving user data. A training stage value during training

0 if transmitting user data. A training stage value during training

◆ training_count

int v22bis_state_s::training_count

A count of how far through the current training step we are.

A counter used to track progress through sending the training sequence.


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