IT++ Logo

egolay.h

Go to the documentation of this file.
00001 
00030 #ifndef EGOLAY_H
00031 #define EGOLAY_H
00032 
00033 #include <itpp/base/vec.h>
00034 #include <itpp/base/mat.h>
00035 #include <itpp/comm/channel_code.h>
00036 
00037 
00038 namespace itpp {
00039 
00051   class Extended_Golay : public Channel_Code {
00052   public:
00054     Extended_Golay();
00056     virtual ~Extended_Golay(){ }
00057 
00059     virtual void encode(const bvec &uncoded_bits, bvec &coded_bits);
00061     virtual bvec encode(const bvec &uncoded_bits);
00062 
00064     virtual void decode(const bvec &coded_bits, bvec &decoded_bits);
00066     virtual bvec decode(const bvec &coded_bits);
00067 
00068     // Soft-decision decoding is not implemented
00069     virtual void decode(const vec &received_signal, bvec &output);
00070     virtual bvec decode(const vec &received_signal);
00071 
00073     virtual double get_rate() const { return 0.5; };
00074 
00076     bmat get_G() const { return G; }
00077   private:
00078     bmat B,G;
00079   };
00080 
00081 } // namespace itpp
00082 
00083 #endif // #ifndef EGOLAY_H
SourceForge Logo

Generated on Thu Apr 24 13:39:00 2008 for IT++ by Doxygen 1.5.5