Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

mimo::RotAlamoutiDec Class Reference

#include <mimo-decoder.h>

Inheritance diagram for mimo::RotAlamoutiDec:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 RotAlamoutiDec (int deviceID, simth::DeviceSystemIntf *system, const simth::PropertyList &pl)
int getDataLength (int codedLength) const
int getCodeLength (int rawLength) const
void Decode (const CVectorSeq &input_vectors, const MatrixFreqSignal &channel_estimation, simth::ModSeq &output_symbols, simth::ModSeq *output_softout)
void startOfSimulation ()
void updateOutputLengths ()
void updateInputLengths ()

Related Functions

(Note that these are not member functions.)

 propertylist_RotAlamoutiDec (not_a_function)

Detailed Description

Implementation of a decoder/equalizer for a Space-Time-Freqeuency-Code system based on a combination of Alamouti scheme and real rotation of constellation points.


Constructor & Destructor Documentation

mimo::RotAlamoutiDec::RotAlamoutiDec int  deviceID,
simth::DeviceSystemIntf system,
const simth::PropertyList pl
 


Member Function Documentation

int mimo::RotAlamoutiDec::getDataLength int  codedLength  )  const [virtual]
 

This method has to be implemented in a derived class.

Returns the length of an uncoded input sequence for the given length of the coded output sequence.

If the coded length does fit (codedLength codedBitsPerStep() == 0) the function the function returns the length of a data sequence which is encoded by the coder from a coded sequence of the given length. In general the function returns the maximal length of a data sequence whose encoded length is smaller or equal code_length.

Parameters:
codedLength length of the coded input sequence
Returns:
required length of the output sequence

Implements mimo::Decoder.

int mimo::RotAlamoutiDec::getCodeLength int  rawLength  )  const [virtual]
 

This method has to be implemented in a derived class.

Returns the length of a coded output sequence for a given length of the uncoded input sequence.

If the data length does not fit (dataLength dataBitsPerStep() != 0) an FitErr exception is thrown, which should be caught in the scope calling the function.

Parameters:
rawLength length of the data sequence
Returns:
allocated length of the coded sequence

Implements mimo::Decoder.

void mimo::RotAlamoutiDec::Decode const CVectorSeq input_vectors,
const MatrixFreqSignal channel_estimation,
simth::ModSeq output_symbols,
simth::ModSeq output_softout
[virtual]
 

Encodes the given sequence of symbols into the given output sequence of vectors.

This is the main method that has to be implemented in a derived class.

Parameters:
input_vectors The received signal vectors
channel_estimation The channel matrix estimates, one for each received vector.
output_symbols The sequence of resulting output symbols
output_softout May be Null. The sequence of resulting softout reliability measures, one for each resulting output symbols. If this is Null, your implementation may not touch this. If this is non-Null, then either you have to calculate the softout values, or you have to fill this sequence with zeros. WATCH OUT: This output should contain the square root of the softout reliability information, but as complex numbers (Since 2004-11-02). The reason for this is that the Simthetic Demodulator devices expect a channel estimation input and use its squared magnitude as reliability information -- so by providing the expected values at this output interface, we can directly connect this output interface to the channel estimation input interface of the demodulator device here in simthetic.

Implements mimo::Decoder.

void mimo::RotAlamoutiDec::startOfSimulation  )  [virtual]
 

Reimplemented from simth::Device.

void mimo::RotAlamoutiDec::updateOutputLengths  )  [virtual]
 

Implementation of methods of simth::Device.

Reimplemented from mimo::Decoder.

void mimo::RotAlamoutiDec::updateInputLengths  )  [virtual]
 

Implementation of methods of simth::Device.

Reimplemented from mimo::Decoder.


Friends And Related Function Documentation

propertylist_RotAlamoutiDec not_a_function   )  [related]
 

These are the properties of class RotAlamoutiDec . This list is auto-generated from the XML-Devicelist of this device by means of an XSLT transformation script.

Description of this device in the XML file: RotAlamoutiDec

Note that this class also has the Properties of its base classes. The direct base class is mimo::Decoder ; direct link to its propertylist should be propertylist_Decoder(). The list below usually includes the properties that have been inherited from the base classes; the properties which belong only to this class can be found at the end of this list.

nr_rx
<unsigned>, default "" -- Number of receive antennas.

nr_tx
<unsigned>, default "" -- Number of transmit antennas.

2 properties in this class. The above properties have been inherited from the base class mimo::Decoder .

num_carrier
<unsigned>, default "" -- The number of OFDM subcarriers.

1 properties in this class.


Generated on Tue Aug 9 14:44:01 2005 for mimolib by  doxygen 1.4.1