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

simthlib::AdaptiveDemodulatorBase Class Reference

#include <adaptiveDemodulator.h>

Inheritance diagram for simthlib::AdaptiveDemodulatorBase:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 AdaptiveDemodulatorBase (int id, simth::DeviceSystemIntf *s, const simth::PropertyList &pl)
virtual void updateInputLengths ()=0
virtual void updateOutputLengths ()=0
virtual void print (std::ostream &os) const =0
virtual void process ()=0
virtual ~AdaptiveDemodulatorBase ()

Protected Member Functions

virtual void demodulate (const simth::ModSeq &receivedSym, simth::LlrSeq *correspondingLlrValues, double noise=0, const simth::ModSeq *trans=NULL, simth::LoadingInfoSeq *loading=NULL)
virtual void demodulate (const simth::ModSeq &receivedSym, simth::LlvSeq *correspondingLlvValues, double noise=0, const simth::ModSeq *trans=NULL, simth::LoadingInfoSeq *loading=NULL)
virtual int MakeMetric (Complex sym, simth::Llv *const llv, ConstellationDiagram *constellation, MappingScheme *mapping, int bitsPerSym, Complex h, double noise)=0
virtual void llvSeq2llrSeq (const simth::LlvSeq &from, simth::LlrSeq *llrSeq)=0
 AdaptiveDemodulatorBase (simth::SequenceType outType, map_type _mapping, int _avgBitsPerSym, std::auto_ptr< Interleaving > _intl)

Protected Attributes

simth::SequenceType outputType_
ExtendedModListlocalExtModlist
map_type mapping
int avgBitsPerSym
double snr
Interleavingintl
bool csi_only_for_reliabilities

Related Functions

(Note that these are not member functions.)

 propertylist_AdaptiveDemodulatorBase (not_a_function)

Constructor & Destructor Documentation

simthlib::AdaptiveDemodulatorBase::AdaptiveDemodulatorBase simth::SequenceType  outType,
map_type  _mapping,
int  _avgBitsPerSym,
std::auto_ptr< Interleaving _intl
[protected]
 

simthlib::AdaptiveDemodulatorBase::AdaptiveDemodulatorBase int  id,
simth::DeviceSystemIntf s,
const simth::PropertyList pl
 

virtual simthlib::AdaptiveDemodulatorBase::~AdaptiveDemodulatorBase  )  [virtual]
 


Member Function Documentation

virtual void simthlib::AdaptiveDemodulatorBase::demodulate const simth::ModSeq receivedSym,
simth::LlvSeq correspondingLlvValues,
double  noise = 0,
const simth::ModSeq trans = NULL,
simth::LoadingInfoSeq loading = NULL
[protected, virtual]
 

Demodulates a sequence of received data words to a sequence of log-likelihood-values (Llv).

virtual void simthlib::AdaptiveDemodulatorBase::demodulate const simth::ModSeq receivedSym,
simth::LlrSeq correspondingLlrValues,
double  noise = 0,
const simth::ModSeq trans = NULL,
simth::LoadingInfoSeq loading = NULL
[protected, virtual]
 

Demodulates a sequence of received data words to a sequence of log-likelihood-ratio (llr) values; each LLR-value represents the hard decisions of one bit and the probability of this decision. The hard decision (the bit itselfs) is determined by the sign of the LLR-Value, whereas the probability is described by the absolute value of the log-likelihood ratio:

  • /f$llr = ln(p(1)/p(0))/f$

virtual void simthlib::AdaptiveDemodulatorBase::llvSeq2llrSeq const simth::LlvSeq from,
simth::LlrSeq llrSeq
[protected, pure virtual]
 

virtual int simthlib::AdaptiveDemodulatorBase::MakeMetric Complex  sym,
simth::Llv *const   llv,
ConstellationDiagram constellation,
MappingScheme mapping,
int  bitsPerSym,
Complex  h,
double  noise
[protected, pure virtual]
 

Return value is the number of states, i.e. the number of returned LLVs

virtual void simthlib::AdaptiveDemodulatorBase::print std::ostream &  os  )  const [pure virtual]
 

Reimplemented from simth::Device.

Implemented in simthlib::AdaptiveDemodulator, and simthlib::MultilevelAdaptiveDemodulator.

virtual void simthlib::AdaptiveDemodulatorBase::process  )  [pure virtual]
 

Implements simth::Device.

Implemented in simthlib::AdaptiveDemodulator, and simthlib::MultilevelAdaptiveDemodulator.

virtual void simthlib::AdaptiveDemodulatorBase::updateInputLengths  )  [pure virtual]
 

Implements simth::Device.

Implemented in simthlib::AdaptiveDemodulator, and simthlib::MultilevelAdaptiveDemodulator.

virtual void simthlib::AdaptiveDemodulatorBase::updateOutputLengths  )  [pure virtual]
 

Implements simth::Device.

Implemented in simthlib::AdaptiveDemodulator, and simthlib::MultilevelAdaptiveDemodulator.


Friends And Related Function Documentation

propertylist_AdaptiveDemodulatorBase not_a_function   )  [related]
 

These are the properties of class AdaptiveDemodulatorBase . 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: Adaptive demodulation.

Note that this class also has the Properties of its base classes. The direct base class is simth::Device ; direct link to its propertylist should be propertylist_Device(). 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.

input_length
<sequencelength>, default "" -- The input length. Needs to be the same as the Modulator's output length. (FIXME: Why does it have to be fixed here?)

mapping
<enum>, default "gray" -- bit mapping scheme

avg_bits_per_symbol
<unsigned>, default "" -- The average number of bits per modulation symbol.

csi_only_for_reliabilities
<bool>, default "false" -- If true, then the Channel State Information (CSI) at the second input interface is only used for calculating the reliabilities of the output. If false (default), then the CSI is used for both equalising the received signal and calculating the reliabilities of the output. If the second input interface is not connected, then this property has no effect.

output_type
<enum>, default "LLR" -- The type of the output interface

symbol_interleaving_length
<unsigned>, default "1" --

symbol_interleaving_rows
<unsigned>, default "1" --

symbol_interleaving_cols
<unsigned>, default "1" --

symbol_interleaving_planes
<unsigned>, default "1" --

9 properties in this class.


Member Data Documentation

int simthlib::AdaptiveDemodulatorBase::avgBitsPerSym [protected]
 

bool simthlib::AdaptiveDemodulatorBase::csi_only_for_reliabilities [protected]
 

Interleaving* simthlib::AdaptiveDemodulatorBase::intl [protected]
 

ExtendedModList* simthlib::AdaptiveDemodulatorBase::localExtModlist [protected]
 

map_type simthlib::AdaptiveDemodulatorBase::mapping [protected]
 

simth::SequenceType simthlib::AdaptiveDemodulatorBase::outputType_ [protected]
 

double simthlib::AdaptiveDemodulatorBase::snr [protected]
 


Generated on Tue Aug 9 14:36:30 2005 for simtheticlib by  doxygen 1.4.1