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 #if !defined(_SPANDSP_PRIVATE_BERT_H_)
00027 #define _SPANDSP_PRIVATE_BERT_H_
00028
00029 typedef struct
00030 {
00031 uint32_t reg;
00032 int step;
00033 int step_bit;
00034 int bits;
00035 int zeros;
00036 } bert_tx_state_t;
00037
00038 typedef struct
00039 {
00040 uint32_t reg;
00041 uint32_t ref_reg;
00042 uint32_t master_reg;
00043 int step;
00044 int step_bit;
00045 int resync;
00046 int bits;
00047 int zeros;
00048 int resync_len;
00049 int resync_percent;
00050 int resync_bad_bits;
00051 int resync_cnt;
00052 int report_countdown;
00053 int measurement_step;
00054 } bert_rx_state_t;
00055
00056
00057
00058
00059
00060 struct bert_state_s
00061 {
00062 int pattern;
00063 int pattern_class;
00064 bert_report_func_t reporter;
00065 void *user_data;
00066 int report_frequency;
00067 int limit;
00068
00069 uint32_t mask;
00070 int shift;
00071 int shift2;
00072 int max_zeros;
00073 int invert;
00074 int resync_time;
00075
00076 int decade_ptr[9];
00077 int decade_bad[9][10];
00078 int error_rate;
00079
00080 bert_tx_state_t tx;
00081 bert_rx_state_t rx;
00082
00083 bert_results_t results;
00084
00085
00086 logging_state_t logging;
00087 };
00088
00089 #endif
00090