AFF3CT
A Fast Forward Error Correction Tool!
 All Classes Files Functions Variables Pages
Public Member Functions | Protected Attributes | List of all members
Channel_i< R > Class Template Referenceabstract

The Channel is the physical transmission medium. More...

#include <Channel.hpp>

Inheritance diagram for Channel_i< R >:
Module SC_Channel< R > Channel_additive_user< R > Channel_AWGN_fast_LLR< R > Channel_AWGN_GSL_LLR< R > Channel_AWGN_MKL_LLR< R > Channel_AWGN_std_LLR< R > Channel_NO< R > Channel_Rayleigh_LLR< R > Channel_AWGN_fast_LR< R > Channel_AWGN_GSL_LR< R > Channel_AWGN_MKL_LR< R > Channel_AWGN_std_LR< R >

Public Member Functions

 Channel_i (const int N, const int n_frames=1, const std::string name="Channel_i")
 Constructor. More...
 
virtual ~Channel_i ()
 Destructor.
 
virtual void add_noise (const mipp::vector< R > &X_N, mipp::vector< R > &Y_N)=0
 Adds the noise to a perfectly clear signal. More...
 
virtual void add_noise (const mipp::vector< R > &X_N, mipp::vector< R > &Y_N, mipp::vector< R > &H_N)
 Adds the noise to a perfectly clear signal. More...
 
- Public Member Functions inherited from Module
 Module (const int n_frames=1, const std::string name="Module")
 Constructor. More...
 
virtual ~Module ()
 Destructor.
 
virtual void set_n_frames (const int n_frames)
 Set the number of frames. More...
 
virtual int get_n_frames () const
 Get the number of frames. More...
 
void rename (const std::string name)
 Rename the Module. More...
 

Protected Attributes

const int N
 
- Protected Attributes inherited from Module
int n_frames
 
std::string name
 

Detailed Description

template<typename R>
class Channel_i< R >

The Channel is the physical transmission medium.

Template Parameters
Rtype of the reals (floating-point representation) in the Channel.

Please use Channel for inheritance (instead of Channel_i).

Constructor & Destructor Documentation

template<typename R >
Channel_i< R >::Channel_i ( const int  N,
const int  n_frames = 1,
const std::string  name = "Channel_i< R >" 
)
inline

Constructor.

Parameters
Nsize of one frame.
n_framesnumber of frames to process in the Channel.
nameChannel's name.

Member Function Documentation

template<typename R >
virtual void Channel_i< R >::add_noise ( const mipp::vector< R > &  X_N,
mipp::vector< R > &  Y_N 
)
pure virtual
template<typename R >
virtual void Channel_i< R >::add_noise ( const mipp::vector< R > &  X_N,
mipp::vector< R > &  Y_N,
mipp::vector< R > &  H_N 
)
inlinevirtual

Adds the noise to a perfectly clear signal.

Parameters
X_Na perfectly clear message.
Y_Na noisy signal.
H_Nthe channel gains.

Reimplemented in Channel_Rayleigh_LLR< R >.

Member Data Documentation

template<typename R >
const int Channel_i< R >::N
protected

Size of one frame (= number of bits in one frame)


The documentation for this class was generated from the following file: