ccsoft  0.0.0
Convolutional codes library with soft decision decoding
ccsoft::CC_EncodingRegisters_FA< T_Register, N_k > Class Template Reference

Convolutional encoding registers class. More...

#include <CC_EncodingRegisters_FA.h>

Inheritance diagram for ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >:

List of all members.

Public Member Functions

 CC_EncodingRegisters_FA ()
 ~CC_EncodingRegisters_FA ()
void clear ()
T_Register & get_register (const unsigned int index)
const std::array< T_Register,
N_k > & 
get_registers () const
void set_registers (const std::array< T_Register, N_k > &_registers)

Protected Attributes

std::array< T_Register, N_k > registers
 Memory registers as many as there are inputs.

Detailed Description

template<typename T_Register, unsigned int N_k>
class ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >

Convolutional encoding registers class.

Template Parameters:
T_Registertype of the internal registers
N_kSize of an input symbol in bits (k parameter)

Constructor & Destructor Documentation

template<typename T_Register , unsigned int N_k>
ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >::CC_EncodingRegisters_FA ( ) [inline]

Constructor.

    {
        clear();
    }

Here is the call graph for this function:

template<typename T_Register , unsigned int N_k>
ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >::~CC_EncodingRegisters_FA ( ) [inline]

Destructor

    {}

Member Function Documentation

template<typename T_Register , unsigned int N_k>
void ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >::clear ( ) [inline]

Clear internal registers. Used before encoding a sequence

    {
        std::fill(registers.begin(), registers.end(), 0);
        //registers.fill(0);
    }
template<typename T_Register , unsigned int N_k>
T_Register& ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >::get_register ( const unsigned int  index) [inline]

Get a register given its index

Reimplemented in ccsoft::CC_Encoding_FA< T_Register, T_IOSymbol, N_k >.

    {
        return registers[index];
    }
template<typename T_Register , unsigned int N_k>
const std::array<T_Register, N_k>& ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >::get_registers ( ) const [inline]

Get registers reference

    {
        return registers;
    }
template<typename T_Register , unsigned int N_k>
void ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >::set_registers ( const std::array< T_Register, N_k > &  _registers) [inline]

Set registers

    {
        registers = _registers;
    }

Member Data Documentation

template<typename T_Register , unsigned int N_k>
std::array<T_Register, N_k> ccsoft::CC_EncodingRegisters_FA< T_Register, N_k >::registers [protected]

Memory registers as many as there are inputs.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines