#include <interleaver.h>
Inheritance diagram for simthlib::Interleaving:
Public Member Functions | |
Interleaving (int memoryLen) | |
constructor, length of memory | |
virtual | ~Interleaving () |
destructor | |
size_t | interleavedLength (size_t inputLength) const |
void | adjustMemoryLength (int newMemLength) |
void | setDeinterleavedLength (int deInterLen) |
sets the length of the next deinterleaved output sequence | |
int | deinterleavedLength () const |
returns the length of the deinterleaved output sequence | |
template<class Seq> | |
void | interleave (const Seq &orig, Seq *inter) const |
interleaves a sequence | |
template<class Seq_in, class Seq_out> | |
void | deinterleave (const Seq_in &inter, Seq_out *deInter) const |
deinterleaves a sequence | |
int | interleaveIndex (size_t index) const |
Returns the interleaved position for the given deinterleaved position. | |
int | deinterleaveIndex (size_t index) const |
Returns the deinterleaved position for the given interleaved position. | |
int | memoryLength () const |
returns the memory length of the interleaver | |
virtual void | print (std::ostream &os, bool debugInfo=false) const |
Static Public Member Functions | |
static void | init (std::ifstream &is, Interleaving **intlv, const std::string ®ionQualifier) |
static std::auto_ptr< simthlib::Interleaving > | init (std::ifstream &is, const std::string ®ionQualifier) |
static std::auto_ptr< simthlib::Interleaving > | init (const std::string &type, const simth::PropertyList &pl) |
static void | register_init (simth::DeviceFactory ®istration) |
Protected Attributes | |
simth::checkedVector< int > | interleavingVector |
simth::checkedVector< int > | deinterleavingVector |
|
constructor, length of memory
|
|
destructor
|
|
|
|
deinterleaves a sequence
|
|
returns the length of the deinterleaved output sequence
|
|
Returns the deinterleaved position for the given interleaved position.
|
|
Init for a given typename and propertylist, returning the resulting Interleaving object. This means for any Interleaving object, we only need part of the cpp type name and also the correct properties in the PropertyList, and then the resulting Interleaving object will be returned. |
|
Init for old-style par files, returning the resulting Interleaving object according to the settings in the regionQualifier section of the input stream |
|
Init for old-style par files |
|
interleaves a sequence
|
|
|
|
Returns the interleaved position for the given deinterleaved position.
|
|
returns the memory length of the interleaver
|
|
|
Register the available factory functions, which are quite a lot: All combinations of Interleave/Deinterleave, BitSeq/LlrSeq, and all different Interleaving classes. The factory function itself will always be Interleaver::init and Deinterleaver::init. |
|
sets the length of the next deinterleaved output sequence
|
|
|
|
|