Enumerations | |
enum | siso_type_t { TRELLIS_MIN_SUM = 200, TRELLIS_SUM_PRODUCT } |
Functions | |
bool | dec2base (unsigned int num, int base, std::vector< int > &s) |
change base More... | |
bool | dec2bases (unsigned int num, const std::vector< int > &bases, std::vector< int > &s) |
unsigned int | base2dec (const std::vector< int > &s, int base) |
unsigned int | bases2dec (const std::vector< int > &s, const std::vector< int > &bases) |
template<class T > | |
void | calc_metric (int O, int D, const std::vector< T > &TABLE, const T *input, float *metric, digital::trellis_metric_type_t type) |
void | calc_metric (int O, int D, const std::vector< gr_complex > &TABLE, const gr_complex *input, float *metric, digital::trellis_metric_type_t type) |
float | min (float a, float b) |
float | min_star (float a, float b) |
template<class T > | |
void | viterbi_algorithm (int I, int S, int O, const std::vector< int > &NS, const std::vector< int > &OS, const std::vector< std::vector< int > > &PS, const std::vector< std::vector< int > > &PI, int K, int S0, int SK, const float *in, T *out) |
template<class Ti , class To > | |
void | viterbi_algorithm_combined (int I, int S, int O, const std::vector< int > &NS, const std::vector< int > &OS, const std::vector< std::vector< int > > &PS, const std::vector< std::vector< int > > &PI, int K, int S0, int SK, int D, const std::vector< Ti > &TABLE, digital::trellis_metric_type_t TYPE, const Ti *in, To *out) |
void | siso_algorithm (int I, int S, int O, const std::vector< int > &NS, const std::vector< int > &OS, const std::vector< std::vector< int > > &PS, const std::vector< std::vector< int > > &PI, int K, int S0, int SK, bool POSTI, bool POSTO, float(*p2mymin)(float, float), const float *priori, const float *prioro, float *post) |
template<class T > | |
void | siso_algorithm_combined (int I, int S, int O, const std::vector< int > &NS, const std::vector< int > &OS, const std::vector< std::vector< int > > &PS, const std::vector< std::vector< int > > &PI, int K, int S0, int SK, bool POSTI, bool POSTO, float(*p2mymin)(float, float), int D, const std::vector< T > &TABLE, digital::trellis_metric_type_t TYPE, const float *priori, const T *observations, float *post) |
template<class T > | |
void | sccc_decoder (const fsm &FSMo, int STo0, int SToK, const fsm &FSMi, int STi0, int STiK, const interleaver &INTERLEAVER, int blocklength, int iterations, float(*p2mymin)(float, float), const float *iprioro, T *data) |
template<class Ti , class To > | |
void | sccc_decoder_combined (const fsm &FSMo, int STo0, int SToK, const fsm &FSMi, int STi0, int STiK, const interleaver &INTERLEAVER, int blocklength, int iterations, float(*p2mymin)(float, float), int D, const std::vector< Ti > &TABLE, digital::trellis_metric_type_t METRIC_TYPE, float scaling, const Ti *observations, To *data) |
template<class T > | |
void | pccc_decoder (const fsm &FSM1, int ST10, int ST1K, const fsm &FSM2, int ST20, int ST2K, const interleaver &INTERLEAVER, int blocklength, int iterations, float(*p2mymin)(float, float), const float *cprioro, T *data) |
template<class Ti , class To > | |
void | pccc_decoder_combined (const fsm &FSM1, int ST10, int ST1K, const fsm &FSM2, int ST20, int ST2K, const interleaver &INTERLEAVER, int blocklength, int iterations, float(*p2mymin)(float, float), int D, const std::vector< Ti > &TABLE, digital::trellis_metric_type_t METRIC_TYPE, float scaling, const Ti *observations, To *data) |
template<class T > | |
void | SWAP (T &a, T &b) |
template<class T > | |
void | quicksort_index (std::vector< T > &p, std::vector< int > &index, int left, int right) |
unsigned int gr::trellis::base2dec | ( | const std::vector< int > & | s, |
int | base | ||
) |
unsigned int gr::trellis::bases2dec | ( | const std::vector< int > & | s, |
const std::vector< int > & | bases | ||
) |
void gr::trellis::calc_metric | ( | int | O, |
int | D, | ||
const std::vector< T > & | TABLE, | ||
const T * | input, | ||
float * | metric, | ||
digital::trellis_metric_type_t | type | ||
) |
void gr::trellis::calc_metric | ( | int | O, |
int | D, | ||
const std::vector< gr_complex > & | TABLE, | ||
const gr_complex * | input, | ||
float * | metric, | ||
digital::trellis_metric_type_t | type | ||
) |
bool gr::trellis::dec2base | ( | unsigned int | num, |
int | base, | ||
std::vector< int > & | s | ||
) |
change base
bool gr::trellis::dec2bases | ( | unsigned int | num, |
const std::vector< int > & | bases, | ||
std::vector< int > & | s | ||
) |
float gr::trellis::min | ( | float | a, |
float | b | ||
) |
Referenced by renormalize().
float gr::trellis::min_star | ( | float | a, |
float | b | ||
) |
void gr::trellis::pccc_decoder | ( | const fsm & | FSM1, |
int | ST10, | ||
int | ST1K, | ||
const fsm & | FSM2, | ||
int | ST20, | ||
int | ST2K, | ||
const interleaver & | INTERLEAVER, | ||
int | blocklength, | ||
int | iterations, | ||
float(*)(float, float) | p2mymin, | ||
const float * | cprioro, | ||
T * | data | ||
) |
void gr::trellis::pccc_decoder_combined | ( | const fsm & | FSM1, |
int | ST10, | ||
int | ST1K, | ||
const fsm & | FSM2, | ||
int | ST20, | ||
int | ST2K, | ||
const interleaver & | INTERLEAVER, | ||
int | blocklength, | ||
int | iterations, | ||
float(*)(float, float) | p2mymin, | ||
int | D, | ||
const std::vector< Ti > & | TABLE, | ||
digital::trellis_metric_type_t | METRIC_TYPE, | ||
float | scaling, | ||
const Ti * | observations, | ||
To * | data | ||
) |
void gr::trellis::quicksort_index | ( | std::vector< T > & | p, |
std::vector< int > & | index, | ||
int | left, | ||
int | right | ||
) |
void gr::trellis::sccc_decoder | ( | const fsm & | FSMo, |
int | STo0, | ||
int | SToK, | ||
const fsm & | FSMi, | ||
int | STi0, | ||
int | STiK, | ||
const interleaver & | INTERLEAVER, | ||
int | blocklength, | ||
int | iterations, | ||
float(*)(float, float) | p2mymin, | ||
const float * | iprioro, | ||
T * | data | ||
) |
void gr::trellis::sccc_decoder_combined | ( | const fsm & | FSMo, |
int | STo0, | ||
int | SToK, | ||
const fsm & | FSMi, | ||
int | STi0, | ||
int | STiK, | ||
const interleaver & | INTERLEAVER, | ||
int | blocklength, | ||
int | iterations, | ||
float(*)(float, float) | p2mymin, | ||
int | D, | ||
const std::vector< Ti > & | TABLE, | ||
digital::trellis_metric_type_t | METRIC_TYPE, | ||
float | scaling, | ||
const Ti * | observations, | ||
To * | data | ||
) |
void gr::trellis::siso_algorithm | ( | int | I, |
int | S, | ||
int | O, | ||
const std::vector< int > & | NS, | ||
const std::vector< int > & | OS, | ||
const std::vector< std::vector< int > > & | PS, | ||
const std::vector< std::vector< int > > & | PI, | ||
int | K, | ||
int | S0, | ||
int | SK, | ||
bool | POSTI, | ||
bool | POSTO, | ||
float(*)(float, float) | p2mymin, | ||
const float * | priori, | ||
const float * | prioro, | ||
float * | post | ||
) |
void gr::trellis::siso_algorithm_combined | ( | int | I, |
int | S, | ||
int | O, | ||
const std::vector< int > & | NS, | ||
const std::vector< int > & | OS, | ||
const std::vector< std::vector< int > > & | PS, | ||
const std::vector< std::vector< int > > & | PI, | ||
int | K, | ||
int | S0, | ||
int | SK, | ||
bool | POSTI, | ||
bool | POSTO, | ||
float(*)(float, float) | p2mymin, | ||
int | D, | ||
const std::vector< T > & | TABLE, | ||
digital::trellis_metric_type_t | TYPE, | ||
const float * | priori, | ||
const T * | observations, | ||
float * | post | ||
) |
void gr::trellis::SWAP | ( | T & | a, |
T & | b | ||
) |
void gr::trellis::viterbi_algorithm | ( | int | I, |
int | S, | ||
int | O, | ||
const std::vector< int > & | NS, | ||
const std::vector< int > & | OS, | ||
const std::vector< std::vector< int > > & | PS, | ||
const std::vector< std::vector< int > > & | PI, | ||
int | K, | ||
int | S0, | ||
int | SK, | ||
const float * | in, | ||
T * | out | ||
) |
void gr::trellis::viterbi_algorithm_combined | ( | int | I, |
int | S, | ||
int | O, | ||
const std::vector< int > & | NS, | ||
const std::vector< int > & | OS, | ||
const std::vector< std::vector< int > > & | PS, | ||
const std::vector< std::vector< int > > & | PI, | ||
int | K, | ||
int | S0, | ||
int | SK, | ||
int | D, | ||
const std::vector< Ti > & | TABLE, | ||
digital::trellis_metric_type_t | TYPE, | ||
const Ti * | in, | ||
To * | out | ||
) |