GNU Radio's DVBS2RX Package
gf.h File Reference
#include <gnuradio/dvbs2rx/api.h>
#include <unordered_map>
#include <bitset>
#include <cstdint>
#include <limits>
#include <set>
#include <stdexcept>
#include <vector>
Include dependency graph for gf.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  gr::dvbs2rx::galois_field< T >
 Galois Field GF(2^m). More...
 
class  gr::dvbs2rx::gf2_poly< T >
 Polynomial over GF(2). More...
 
class  gr::dvbs2rx::gf2m_poly< T >
 Polynomial over GF(2^m). More...
 

Namespaces

namespace  gr
 Fixed-length double-ended queue with contiguous volk-aligned elements.
 
namespace  gr::dvbs2rx
 

Typedefs

typedef std::bitset< 256 > gr::dvbs2rx::bitset256_t
 
typedef gf2_poly< uint16_t > gr::dvbs2rx::gf2_poly_u16
 
typedef gf2_poly< uint32_t > gr::dvbs2rx::gf2_poly_u32
 
typedef gf2_poly< uint64_t > gr::dvbs2rx::gf2_poly_u64
 
typedef gf2_poly< bitset256_tgr::dvbs2rx::gf2_poly_b256
 

Functions

template<typename T >
bool gr::dvbs2rx::is_bit_set (const T &x, int i_bit)
 Test if bit is set.
 
template<>
bool gr::dvbs2rx::is_bit_set (const bitset256_t &x, int i_bit)
 
template<typename T >
constexpr size_t gr::dvbs2rx::get_max_gf2_poly_degree ()
 Get the maximum degree a GF2 polynomial can have with type T.
 
template<>
constexpr size_t gr::dvbs2rx::get_max_gf2_poly_degree< bitset256_t > ()
 
template<typename Ta , typename Tb >
gf2_poly< Tb > gr::dvbs2rx::operator% (const gf2_poly< Ta > a, const gf2_poly< Tb > b)
 Compute the remainder of the division between two GF(2) polynomials.
 
template<typename Ta , typename Tb >
void gr::dvbs2rx::check_rem_types (const gf2_poly< Ta > a, const gf2_poly< Tb > b)
 
template<typename Tb >
void gr::dvbs2rx::check_rem_types (const gf2_poly< bitset256_t > a, const gf2_poly< Tb > b)
 
template<typename Ta >
void gr::dvbs2rx::check_rem_types (const gf2_poly< Ta > a, const gf2_poly< bitset256_t > b)
 
void gr::dvbs2rx::check_rem_types (const gf2_poly< bitset256_t > a, const gf2_poly< bitset256_t > b)
 

Variables

template<typename T >
class DVBS2RX_API gr::dvbs2rx::gf2_poly
 
template<typename T >
class DVBS2RX_API gr::dvbs2rx::gf2m_poly