#include <gnuradio/fec/gf2mat.h>
Public Member Functions | |
| GF2Mat () | |
| Default constructor. | |
| GF2Mat (int m, int n) | |
| Construct an M x N matrix with all 0 entries. | |
| GF2Mat (alist _list) | |
| Loads the matrix from alist _list. | |
| GF2Mat (std::vector< std::vector< uint8_t > > X) | |
| Initializes the class from a 2-D vector X. | |
| int | get_M () |
| Returns the variable M. | |
| int | get_N () |
| Returns the variable N. | |
| void | set_element (int i, int j, char val) |
| Set the element at (i, j) coordinate to val. | |
| char | get_element (int i, int j) |
| Returns the element at coordinate (i, j) | |
| GF2Vec | get_row (int i) |
| Returns the ith row. | |
| GF2Vec | get_col (int i) |
| Returns the ith column. | |
| GF2Vec | operator[] (int i) |
| Returns the ith row. | |
| void | print_matrix () |
| Prints the matrix H. | |
| void | set_col (int i, GF2Vec vec) |
| Sets the ith column with the given vector. | |
| void | set_row (int i, GF2Vec vec) |
| Sets the ith row with the given vector. | |
| void | swap_cols (int i, int j) |
| Swaps columns i and j. | |
| void | add_cols (int i, int j) |
| Adds column j to i and replace i with the sum. | |
| void | add_rows (int i, int j) |
| Add row j to i and replace j with the sum. | |
| std::vector< std::vector< uint8_t > > | get_H () |
| Returns the variable H. | |
| GF2Mat | get_G (std::vector< int > &p, int &rank) |
| Obtains an equivalent representation of H for encoding. | |
|
inline |
Default constructor.
Referenced by get_G().
| 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< uint8_t > > | 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.
| void GF2Mat::add_rows | ( | int | i, |
| int | j ) |
Add row j to i and replace j with the sum.
| GF2Vec GF2Mat::get_col | ( | int | i | ) |
Returns the ith column.
| char GF2Mat::get_element | ( | int | i, |
| int | j ) |
Returns the element at coordinate (i, j)
| 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. |
References GF2Mat().
| std::vector< std::vector< uint8_t > > GF2Mat::get_H | ( | ) |
Returns the variable H.
| int GF2Mat::get_M | ( | ) |
Returns the variable M.
| int GF2Mat::get_N | ( | ) |
Returns the variable N.
| GF2Vec GF2Mat::get_row | ( | int | i | ) |
Returns the ith row.
| GF2Vec GF2Mat::operator[] | ( | int | i | ) |
Returns the ith row.
| void GF2Mat::print_matrix | ( | ) |
Prints the matrix H.
| void GF2Mat::set_col | ( | int | i, |
| GF2Vec | vec ) |
Sets the ith column with the given vector.
| void GF2Mat::set_element | ( | int | i, |
| int | j, | ||
| char | val ) |
Set the element at (i, j) coordinate to val.
| void GF2Mat::set_row | ( | int | i, |
| GF2Vec | vec ) |
Sets the ith row with the given vector.
| void GF2Mat::swap_cols | ( | int | i, |
| int | j ) |
Swaps columns i and j.