![]() |
rssoft
0.0.0
Reed-Solomon codes library with soft decision decoding
|
#include <GF2_Element.h>
{ bin_value = (v ? 1 : 0); }
rssoft::gf::GF2_Element::GF2_Element | ( | const GF2_Element & | gfe | ) |
{ bin_value = gfe.bin_value; }
rssoft::gf::GF2_Element::~GF2_Element | ( | ) | [inline] |
{ }
bool rssoft::gf::GF2_Element::operator!= | ( | const GF2_Element & | gfe | ) | const [inline] |
{ return (bin_value != gfe.bin_value); }
bool rssoft::gf::GF2_Element::operator!= | ( | const GF2_Symbol & | v | ) | const [inline] |
{ return (bin_value != (v ? 1 : 0)); }
GF2_Element& rssoft::gf::GF2_Element::operator*= | ( | const GF2_Element & | gfe | ) | [inline] |
{ bin_value *= gfe.bin_value; return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator*= | ( | const GF2_Symbol & | v | ) | [inline] |
{ bin_value *= (v ? 1 : 0); return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator+= | ( | const GF2_Element & | gfe | ) | [inline] |
{ bin_value ^= gfe.bin_value; return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator+= | ( | const GF2_Symbol & | v | ) | [inline] |
{ bin_value ^= (v ? 1 : 0); return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator-= | ( | const GF2_Element & | gfe | ) | [inline] |
{ *this += gfe; return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator-= | ( | const GF2_Symbol & | v | ) | [inline] |
{ *this += (v ? 1 : 0); return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator/= | ( | const GF2_Element & | gfe | ) | [inline] |
{ if (gfe.bin_value == 0) { throw GF_Exception("Division by zero"); } return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator/= | ( | const GF2_Symbol & | v | ) | [inline] |
{ if (!v) { throw GF_Exception("Division by zero"); } return *this; }
bool rssoft::gf::GF2_Element::operator< | ( | const GF2_Element & | gfe | ) | [inline] |
{ return (bin_value < gfe.bin_value); }
bool rssoft::gf::GF2_Element::operator< | ( | const GF2_Symbol & | v | ) | [inline] |
{ return (bin_value < (v ? 1 : 0)); }
GF2_Element& rssoft::gf::GF2_Element::operator= | ( | const GF2_Element & | gfe | ) | [inline] |
{ if (this != &gfe) { bin_value = gfe.bin_value; } return *this; }
GF2_Element& rssoft::gf::GF2_Element::operator= | ( | const GF2_Symbol & | v | ) | [inline] |
{ bin_value = (v ? 1 : 0); return *this; }
bool rssoft::gf::GF2_Element::operator== | ( | const GF2_Element & | gfe | ) | const [inline] |
{ return (bin_value == gfe.bin_value); }
bool rssoft::gf::GF2_Element::operator== | ( | const GF2_Symbol & | v | ) | const [inline] |
{ return (bin_value == (v ? 1 : 0)); }
bool rssoft::gf::GF2_Element::operator> | ( | const GF2_Element & | gfe | ) | [inline] |
{ return (bin_value > gfe.bin_value); }
bool rssoft::gf::GF2_Element::operator> | ( | const GF2_Symbol & | v | ) | [inline] |
{ return (bin_value > (v ? 1 : 0)); }
GF2_Element& rssoft::gf::GF2_Element::operator^= | ( | const int & | n | ) | [inline] |
{ return *this; }
unsigned int rssoft::gf::GF2_Element::uint_value | ( | ) | const [inline] |
{ return (unsigned int) bin_value; }
std::ostream& operator<< | ( | std::ostream & | os, |
const GF2_Element & | gfe | ||
) | [friend] |
{
os << (gfe.bin_value ? 1 : 0);
return os;
}
unsigned char rssoft::gf::GF2_Element::bin_value [private] |
internal representation of the symbol