35 #include <itpp/itexports.h>
54 virtual void encode(
const bvec &uncoded_bits, bvec &coded_bits);
56 virtual bvec encode(
const bvec &uncoded_bits);
59 virtual void decode(
const bvec &coded_bits, bvec &decoded_bits);
61 virtual bvec decode(
const bvec &coded_bits);
64 virtual void decode(
const vec &received_signal, bvec &output);
65 virtual bvec decode(
const vec &received_signal);
68 virtual double get_rate()
const {
return static_cast<double>(k) / n; };
71 int get_n()
const {
return n; };
73 int get_k()
const {
return k; };
81 void generate_H(
void);
82 void generate_G(
void);
87 #endif // #ifndef HAMMING_H