#include <gnuradio/fec/gf2mat.h>
Public Member Functions | |
| GF2Mat () | |
| Default constructor. More... | |
| GF2Mat (int m, int n) | |
| Construct an M x N matrix with all 0 entries. More... | |
| GF2Mat (alist _list) | |
| Loads the matrix from alist _list. More... | |
| GF2Mat (std::vector< std::vector< char > > X) | |
| Initializes the class from a 2-D vector X. More... | |
| int | get_M () |
| Returns the variable M. More... | |
| int | get_N () |
| Returns the variable N. More... | |
| void | set_element (int i, int j, char val) |
| Set the element at (i, j) coordinate to val. More... | |
| char | get_element (int i, int j) |
| Returns the element at coordinate (i, j) More... | |
| GF2Vec | get_row (int i) |
| Returns the ith row. More... | |
| GF2Vec | get_col (int i) |
| Returns the ith column. More... | |
| GF2Vec | operator[] (int i) |
| Returns the ith row. More... | |
| void | print_matrix () |
| Prints the matrix H. More... | |
| void | set_col (int i, GF2Vec vec) |
| Sets the ith column with the given vector. More... | |
| void | set_row (int i, GF2Vec vec) |
| Sets the ith row with the given vector. More... | |
| void | swap_cols (int i, int j) |
| Swaps columns i and j. More... | |
| void | add_cols (int i, int j) |
| Adds column j to i and replace i with the sum. More... | |
| void | add_rows (int i, int j) |
| Add row j to i and replace j with the sum. More... | |
| std::vector< std::vector< char > > | get_H () |
| Returns the variable H. More... | |
| GF2Mat | get_G (std::vector< int > &p, int &rank) |
| Obtains an equivalent representation of H for encoding. More... | |
|
inline |
Default constructor.
References add_cols(), add_rows(), get_col(), get_element(), get_G(), get_H(), get_M(), get_N(), get_row(), operator[](), print_matrix(), set_col(), set_element(), set_row(), and swap_cols().
| GF2Mat::GF2Mat | ( | int | m, |
| int | n | ||
| ) |
Construct an M x N matrix with all 0 entries.
| GF2Mat::GF2Mat | ( | alist | _list | ) |
Loads the matrix from alist _list.
| GF2Mat::GF2Mat | ( | std::vector< std::vector< char > > | X | ) |
Initializes the class from a 2-D vector X.
| void GF2Mat::add_cols | ( | int | i, |
| int | j | ||
| ) |
Adds column j to i and replace i with the sum.
Referenced by GF2Mat().
| void GF2Mat::add_rows | ( | int | i, |
| int | j | ||
| ) |
Add row j to i and replace j with the sum.
Referenced by GF2Mat().
| char GF2Mat::get_element | ( | int | i, |
| int | j | ||
| ) |
Returns the element at coordinate (i, j)
Referenced by GF2Mat().
| GF2Mat GF2Mat::get_G | ( | std::vector< int > & | p, |
| int & | rank | ||
| ) |
Obtains an equivalent representation of H for encoding.
For encoding a G matrix in the form [I P] obtained from the parity matrix H, by (a) Column permutations, (b) Row additions and (c) Row permutations. Details of encoding is given in section A.1 of the reference:
| p | The column permutation during this operation. |
| rank | The rank of the matrix. |
Referenced by GF2Mat().
| std::vector<std::vector<char> > GF2Mat::get_H | ( | ) |
Returns the variable H.
Referenced by GF2Mat().
| int GF2Mat::get_M | ( | ) |
Returns the variable M.
Referenced by GF2Mat().
| int GF2Mat::get_N | ( | ) |
Returns the variable N.
Referenced by GF2Mat().
| void GF2Mat::print_matrix | ( | ) |
Prints the matrix H.
Referenced by GF2Mat().
| void GF2Mat::set_col | ( | int | i, |
| GF2Vec | vec | ||
| ) |
Sets the ith column with the given vector.
Referenced by GF2Mat().
| void GF2Mat::set_element | ( | int | i, |
| int | j, | ||
| char | val | ||
| ) |
Set the element at (i, j) coordinate to val.
Referenced by GF2Mat().
| void GF2Mat::set_row | ( | int | i, |
| GF2Vec | vec | ||
| ) |
Sets the ith row with the given vector.
Referenced by GF2Mat().
| void GF2Mat::swap_cols | ( | int | i, |
| int | j | ||
| ) |
Swaps columns i and j.
Referenced by GF2Mat().