itpp::Block_Interleaver< T > Class Template Reference
Communications Module » Interleavers

Block Interleaver Class. More...

`#include <comm/interleave.h>`

## Public Member Functions

| Block_Interleaver (void)
| Block_Interleaver constructor.
| Block_Interleaver (int in_rows, int in_cols)
| Block_Interleaver constructor.
Vec< T > | interleave (const Vec< T > &input)
| Function for block interleaving. May add some zeros.
void | interleave (const Vec< T > &input, Vec< T > &output)
| Function for block interleaving. May add some zeros.
Vec< T > | deinterleave (const Vec< T > &input, short keepzeros=0)
| Function for block deinterleaving. Removes additional zeros if keepzeros = 0.
void | deinterleave (const Vec< T > &input, Vec< T > &output, short keepzeros=0)
| Function for block deinterleaving. Removes additional zeros if keepzeros = 0.
void | set_rows (int in_rows)
| Set the number of rows for block interleaving.
void | set_cols (int in_cols)
| Set the number of columns for block interleaving.
int | get_rows (void)
| Get the number of rows for block interleaving.
int | get_cols (void)
| Get the number of columns for block interleaving.

## Detailed Description

### template<class T>
class itpp::Block_Interleaver< T >

Block Interleaver Class.

Data is written row-wise and read column-wise when interleaving.

### Example of use:

BPSK bpsk;
bvec bits = "0 1 1 0 0 0 1 1 1 1 0 0 1 0 0 1";
vec symbols = bpsk.modulate_bits(bits);
Block_Interleaver<double> block_interleaver(4,4);
vec interleaved_symbols = block_interleaver.interleave(symbols);

Definition at line 61 of file interleave.h.

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

- itpp/comm/interleave.h

Generated on Sat Sep 30 2017 07:04:09 for IT++ by Doxygen 1.8.13