private/bert.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #if !defined(_SPANDSP_PRIVATE_BERT_H_)
00029 #define _SPANDSP_PRIVATE_BERT_H_
00030
00031 typedef struct
00032 {
00033 uint32_t reg;
00034 int step;
00035 int step_bit;
00036 int bits;
00037 int zeros;
00038 } bert_tx_state_t;
00039
00040 typedef struct
00041 {
00042 uint32_t reg;
00043 uint32_t ref_reg;
00044 uint32_t master_reg;
00045 int step;
00046 int step_bit;
00047 int resync;
00048 int bits;
00049 int zeros;
00050 int resync_len;
00051 int resync_percent;
00052 int resync_bad_bits;
00053 int resync_cnt;
00054 int report_countdown;
00055 int measurement_step;
00056 } bert_rx_state_t;
00057
00058
00059
00060
00061
00062 struct bert_state_s
00063 {
00064 int pattern;
00065 int pattern_class;
00066 bert_report_func_t reporter;
00067 void *user_data;
00068 int report_frequency;
00069 int limit;
00070
00071 uint32_t mask;
00072 int shift;
00073 int shift2;
00074 int max_zeros;
00075 int invert;
00076 int resync_time;
00077
00078 int decade_ptr[9];
00079 int decade_bad[9][10];
00080 int error_rate;
00081
00082 bert_tx_state_t tx;
00083 bert_rx_state_t rx;
00084
00085 bert_results_t results;
00086
00087
00088 logging_state_t logging;
00089 };
00090
00091 #endif
00092