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

Referenced by v22bis_request_retrain(), and v22bis_rx_restart().

## 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.

Referenced by v22bis_request_retrain(), and v22bis_rx_restart().

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

- private/v22bis.h