IT++ Logo Newcom Logo

itpp::Extended_Golay Class Reference
[Forward Error Correcting Codes]

Extended Golay code (24,12,8). More...

#include <itpp/comm/egolay.h>

Inheritance diagram for itpp::Extended_Golay:

itpp::Channel_Code List of all members.

Public Member Functions

 Extended_Golay ()
 Constructor.
virtual ~Extended_Golay ()
 Destructor.
virtual void encode (const bvec &uncoded_bits, bvec &coded_bits)
 Encoder. Will truncate some bits if not length = integer * 12.
virtual bvec encode (const bvec &uncoded_bits)
 Encoder. Will truncate some bits if not length = integer * 12.
virtual void decode (const bvec &coded_bits, bvec &decoded_bits)
 Decoder. Will truncate some bits if not length = integer * 24.
virtual bvec decode (const bvec &coded_bits)
 Decoder. Will truncate some bits if not length = integer * 24.
virtual void decode (const vec &received_signal, bvec &output)
 Decode a vec of received data.
virtual bvec decode (const vec &received_signal)
 Decode a vec of received data.
virtual double get_rate ()
 Get the code rate.
bmat get_G ()
 Gets the generator matrix for the code (also the parity check matrix).

Detailed Description

Extended Golay code (24,12,8).

Author:
Tony Ottosson
The code is given in systematic form with the information bits first, followed by the parity check bits. The decoder uses the arithmetic decoding algorithm that is for example described in Wicker "Error Control Systems for Digital Communication and Storage", Prentice Hall, 1995 (page 143).

Definition at line 54 of file egolay.h.


Constructor & Destructor Documentation

itpp::Extended_Golay::Extended_Golay (  ) 

Constructor.

Definition at line 39 of file egolay.cpp.

References itpp::concat_horizontal(), and itpp::eye_b().

virtual itpp::Extended_Golay::~Extended_Golay (  )  [inline, virtual]

Destructor.

Definition at line 59 of file egolay.h.


Member Function Documentation

void itpp::Extended_Golay::encode ( const bvec &  uncoded_bits,
bvec &  coded_bits 
) [virtual]

Encoder. Will truncate some bits if not length = integer * 12.

Implements itpp::Channel_Code.

Definition at line 46 of file egolay.cpp.

References itpp::floor().

Referenced by encode().

bvec itpp::Extended_Golay::encode ( const bvec &  uncoded_bits  )  [virtual]

Encoder. Will truncate some bits if not length = integer * 12.

Implements itpp::Channel_Code.

Definition at line 59 of file egolay.cpp.

References encode().

void itpp::Extended_Golay::decode ( const bvec &  coded_bits,
bvec &  decoded_bits 
) [virtual]

Decoder. Will truncate some bits if not length = integer * 24.

Implements itpp::Channel_Code.

Definition at line 66 of file egolay.cpp.

References itpp::concat(), itpp::eye_b(), itpp::floor(), itpp::weight(), and itpp::zeros_b().

Referenced by decode().

bvec itpp::Extended_Golay::decode ( const bvec &  coded_bits  )  [virtual]

Decoder. Will truncate some bits if not length = integer * 24.

Implements itpp::Channel_Code.

Definition at line 119 of file egolay.cpp.

References decode().

void itpp::Extended_Golay::decode ( const vec &  received_signal,
bvec &  decoded_bits 
) [virtual]

Decode a vec of received data.

Implements itpp::Channel_Code.

Definition at line 128 of file egolay.cpp.

References it_error.

bvec itpp::Extended_Golay::decode ( const vec &  received_signal  )  [virtual]

Decode a vec of received data.

Implements itpp::Channel_Code.

Definition at line 133 of file egolay.cpp.

References it_error.

virtual double itpp::Extended_Golay::get_rate ( void   )  [inline, virtual]

Get the code rate.

Implements itpp::Channel_Code.

Definition at line 76 of file egolay.h.

bmat itpp::Extended_Golay::get_G (  )  [inline]

Gets the generator matrix for the code (also the parity check matrix).

Definition at line 79 of file egolay.h.


The documentation for this class was generated from the following files:
SourceForge Logo

Generated on Fri Jun 8 02:09:04 2007 for IT++ by Doxygen 1.5.2