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

simthlib::MappingScheme Class Reference

symbol mapping More...

#include <bitmapping.h>

Inheritance diagram for simthlib::MappingScheme:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 MappingScheme (int bitsPerState)
virtual ~MappingScheme ()
bool getBit (int symbIndex, int bitPos) const
int getDataValue (int symbolIndex) const
int getSymbolIndex (int integerValue) const
virtual void print (std::ostream &os, bool detailedPrint=false) const

Static Public Member Functions

Factory functions.
static std::auto_ptr< simthlib::MappingSchemenewMapping (int bitsPerSymbolPar, map_type mappMode)
static std::auto_ptr< simthlib::MappingSchemenew2DimMapping (int numBits1, int numBits2, map_type mappMode)
static std::auto_ptr< simthlib::MappingSchemenewApskMapping (int bitsPerState, map_type mappMode)
static std::auto_ptr< simthlib::MappingSchemenewQamMapping (int bitsPerState, map_type mappMode)

Protected Attributes

const int bitsPerSymbol
const int modulationValency
simth::boolVector2d bitArray
int mappedIndex [simth::MAX_STATES_PER_SYMBOL]
int mappedInteger [simth::MAX_STATES_PER_SYMBOL]

Detailed Description

symbol mapping

The class MappingScheme performs the mapping of a definite number of bits to a corresponding symbol index due to a chosen mapping mode (e.g. gray mapping). The number of bits per symbol is set by an argument of the class constructor.


Constructor & Destructor Documentation

simthlib::MappingScheme::MappingScheme int  bitsPerState  ) 
 

Class constructor.

Parameters:
bitsPerState bits per symbol in the constellation diagram

virtual simthlib::MappingScheme::~MappingScheme  )  [inline, virtual]
 


Member Function Documentation

bool simthlib::MappingScheme::getBit int  symbIndex,
int  bitPos
const [inline]
 

Due to the particular map type, the given symbol index is mapped to the matching integer value which bit at the given bit position is returned. (e.g. (symbol index) 3 -> 5 (integer value) --> (bits) 101 -(position=0)-> return 1)

(FIXME: Well, this sounds really strange ... "depending on" and "whose" instead ?)

int simthlib::MappingScheme::getDataValue int  symbolIndex  )  const
 

Returns the data (integer) value corresponding to the given symbol index (e.g. 3 (arbitrary symbol index) --> 5 (integer value))

int simthlib::MappingScheme::getSymbolIndex int  integerValue  )  const
 

Returns the index of a symbol represented by its integer value (e.g. (bits) 101 -> 5 (integer value) --> 3 (arbitrary symbol index))

static std::auto_ptr<simthlib::MappingScheme> simthlib::MappingScheme::new2DimMapping int  numBits1,
int  numBits2,
map_type  mappMode
[static]
 

static std::auto_ptr<simthlib::MappingScheme> simthlib::MappingScheme::newApskMapping int  bitsPerState,
map_type  mappMode
[static]
 

static std::auto_ptr<simthlib::MappingScheme> simthlib::MappingScheme::newMapping int  bitsPerSymbolPar,
map_type  mappMode
[static]
 

static std::auto_ptr<simthlib::MappingScheme> simthlib::MappingScheme::newQamMapping int  bitsPerState,
map_type  mappMode
[static]
 

virtual void simthlib::MappingScheme::print std::ostream &  os,
bool  detailedPrint = false
const [virtual]
 

Reimplemented in simthlib::NaturalMapping, simthlib::GrayMapping, and simthlib::GrayMapping2Dimension.


Member Data Documentation

simth::boolVector2d simthlib::MappingScheme::bitArray [protected]
 

const int simthlib::MappingScheme::bitsPerSymbol [protected]
 

int simthlib::MappingScheme::mappedIndex[simth::MAX_STATES_PER_SYMBOL] [protected]
 

int simthlib::MappingScheme::mappedInteger[simth::MAX_STATES_PER_SYMBOL] [protected]
 

const int simthlib::MappingScheme::modulationValency [protected]
 


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