spandsp: v17_rx_state_s Struct Reference

spandsp 0.0.6

v17_rx_state_s Struct Reference

`#include <v17rx.h>`

## Public Attributes
int | bit_rate
| The bit rate of the modem. Valid values are 7200 9600, 12000 and 14400.
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_but 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.
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.
int16_t | power_window [40]
int | power_window_ptr
int64_t | window_power
int64_t | window_power_save
float | agc_scaling
| The scaling factor accessed by the AGC algorithm.
float | agc_scaling_save
| The previous value of agc_scaling, needed to reuse old training.
float | eq_delta
| The current delta factor for updating the equalizer coefficients.
complexf_t | eq_coeff [17]
| The adaptive equalizer coefficients.
complexf_t | eq_coeff_save [17]
| A saved set of adaptive equalizer coefficients for use after restarts.
complexf_t | eq_buf [17]
| The equalizer signal buffer.
float | symbol_sync_low [2]
float | symbol_sync_high [2]
float | symbol_sync_dc_filter [2]
float | baud_phase
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.
float | rrc_filter [27]
| The root raised cosine (RRC) pulse shaping filter buffer.
const complexf_t * | constellation
| A pointer to the current constellation.
int | rrc_filter_step
| Current offset into the RRC pulse shaping filter buffer.
int | diff
| The current state of the differential decoder.
uint32_t | scramble_reg
| The register for the data scrambler.
int | short_train
| Scrambler tap.
int | training_stage
| The section of the training data we are currently in.
int | training_count
| A count of how far through the current training step we are.
int16_t | last_sample
| The value of the last signal sample, using the a simple HPF for signal power estimation.
int | signal_present
| >0 if a signal above the minimum is present. It may or may not be a V.17 signal.
int | carrier_drop_pending
| Whether or not a carrier drop was detected and the signal delivery is pending.
int | low_samples
| A count of the current consecutive samples below the carrier off threshold.
int16_t | high_sample
| A highest magnitude sample seen.
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).
int32_t | carrier_phase_rate_save
| The carrier update rate saved for reuse when using short training.
power_meter_t | 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 | eq_step
| Current read offset into the equalizer buffer.
int | eq_put_step
| Current write offset into the equalizer buffer.
int | eq_skip
| Symbol count to the next equalizer update.
int | baud_half
| The current half of the baud.
int | total_baud_timing_correction
| The total symbol timing correction since the carrier came up. This is only for performance analysis purposes.
int32_t | start_angles [2]
| Starting phase angles for the coarse carrier aquisition step.
int32_t | angles [16]
| History list of phase angles for the coarse carrier aquisition step.
int | space_map
| A pointer to the current space map. There is a space map for each trellis state.
int | bits_per_symbol
| The number of bits in each symbol at the current bit rate.
int | trellis_ptr
| Current pointer to the trellis buffers.
int | full_path_to_past_state_locations [16][8]
| The trellis.
int | past_state_locations [16][8]
| The trellis.
float | distances [8]
| Euclidean distances (actually the squares of the distances) from the last states of the trellis.
logging_state_t | logging
| Error and flow logging control.

## Detailed Description

V.17 modem receive side descriptor. This defines the working state for a single instance of a V.17 modem receiver.

## Member Data Documentation

## ◆ baud_phase

float v17_rx_state_s::baud_phase

Baud phase for symbol sync.

Referenced by v17_rx_restart().

## ◆ short_train

int v17_rx_state_s::short_train

Scrambler tap.

TRUE if the short training sequence is to be used.

Referenced by v17_rx_init(), and v17_rx_restart().

## ◆ symbol_sync_dc_filter

float v17_rx_state_s::symbol_sync_dc_filter[2]

DC filter for symbol sync.

Referenced by v17_rx_restart().

## ◆ symbol_sync_high

float v17_rx_state_s::symbol_sync_high[2]

High band edge filter for symbol sync.

Referenced by v17_rx_restart().

## ◆ symbol_sync_low

float v17_rx_state_s::symbol_sync_low[2]

Low band edge filter for symbol sync.

Referenced by v17_rx_restart().

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

- private/v17rx.h