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

simthlib::Modulator Class Reference

abstract base class of a modulator More...

#include <modulator.h>

Inheritance diagram for simthlib::Modulator:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 Modulator (int deviceID, simth::DeviceSystemIntf *system, const simth::PropertyList &pl, std::auto_ptr< MappingScheme > mapp)
virtual ~Modulator ()=0
virtual void updateInputLengths ()
virtual void modulate (const simth::BitSeq &bits, simth::ModSeq *modSymbols)=0
virtual int getNumStates () const =0
virtual void process ()
virtual void print (std::ostream &os) const
virtual void startOfSimulation ()
virtual const ConstellationDiagramconstellation () const =0

Static Public Member Functions

static void init (const std::string fileName, simth::Device **dev, simth::DeviceSystemIntf *sysPtr, int ID, const std::string &regionQualifier="")

Protected Member Functions

virtual int getBitsPerSymbol () const =0
virtual Complex getComplSymbol (int symbolIndex) const =0
int getSymbolIndex (int dataValue) const
void bitSeq2IndexSeq (const simth::BitSeq &newBitSeq, simth::ModIndSeq *indexSeq)
void indexSeq2complSymbolSeq (const simth::ModIndSeq &modIndexes, simth::ModSeq *complSym)
int indexLength (int bitLen) const

Friends

class AdachiDemodulator

Related Functions

(Note that these are not member functions.)

 propertylist_Modulator (not_a_function)

Detailed Description

abstract base class of a modulator

The class modulator is an abstract base class wich provides an interface for a particular modulator (e.g. DPSK modulator).


Constructor & Destructor Documentation

simthlib::Modulator::Modulator int  deviceID,
simth::DeviceSystemIntf system,
const simth::PropertyList pl,
std::auto_ptr< MappingScheme mapp
 

Class constructor.

virtual simthlib::Modulator::~Modulator  )  [pure virtual]
 

The pure virtual destructor assures that no instance of this class can be created.


Member Function Documentation

void simthlib::Modulator::bitSeq2IndexSeq const simth::BitSeq newBitSeq,
simth::ModIndSeq indexSeq
[protected]
 

This function maps the given bit sequence to a sequence of integer values. The number of bits per integer value is determined by the the modulation valency of the chosen modulation scheme. The resulting integer values, also called modulation indexes, will be stored inside the class and can be accessed by the three functions described next. Additionally, the function sets dummySymbols to the number of bits appended to the last modulated sequence.

virtual const ConstellationDiagram* simthlib::Modulator::constellation  )  const [pure virtual]
 

Returns a pointer to the used constellation diagram.

Implemented in simthlib::QamModulator, simthlib::PskModulator, simthlib::ApskModulator, simthlib::DaskModulator, simthlib::DpskModulator, and simthlib::DapskModulator.

virtual int simthlib::Modulator::getBitsPerSymbol  )  const [protected, pure virtual]
 

virtual Complex simthlib::Modulator::getComplSymbol int  symbolIndex  )  const [protected, pure virtual]
 

virtual int simthlib::Modulator::getNumStates  )  const [pure virtual]
 

Implemented in simthlib::QamModulator, simthlib::PskModulator, simthlib::ApskModulator, simthlib::DaskModulator, simthlib::DpskModulator, and simthlib::DapskModulator.

int simthlib::Modulator::getSymbolIndex int  dataValue  )  const [inline, protected]
 

int simthlib::Modulator::indexLength int  bitLen  )  const [protected]
 

void simthlib::Modulator::indexSeq2complSymbolSeq const simth::ModIndSeq modIndexes,
simth::ModSeq complSym
[protected]
 

Transforms a given sequence of symbol indexes to the corresponding complex values in the constellation diagram, according to the chosen modulation scheme.

static void simthlib::Modulator::init const std::string  fileName,
simth::Device **  dev,
simth::DeviceSystemIntf sysPtr,
int  ID,
const std::string &  regionQualifier = ""
[static]
 

DEPRECATED. The new method of creating a device is through the map of factory functions, as created inside the DeviceFactory class. This function will go away in future.

virtual void simthlib::Modulator::modulate const simth::BitSeq bits,
simth::ModSeq modSymbols
[pure virtual]
 

Modulate a sequence of bits to a sequence of complex values. These complex values representing the symbols to be transmitted.

Implemented in simthlib::AbsModulator, and simthlib::DiffModulator.

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

Reimplemented from simth::Device.

Reimplemented in simthlib::QamModulator, simthlib::PskModulator, simthlib::ApskModulator, simthlib::DiffSubSeqModulator, simthlib::DaskModulator, simthlib::DpskModulator, and simthlib::DapskModulator.

virtual void simthlib::Modulator::process  )  [virtual]
 

Implements simth::Device.

virtual void simthlib::Modulator::startOfSimulation  )  [virtual]
 

Reimplemented from simth::Device.

Reimplemented in simthlib::PskModulator, simthlib::ApskModulator, simthlib::DpskModulator, and simthlib::DapskModulator.

virtual void simthlib::Modulator::updateInputLengths  )  [virtual]
 

Implements simth::Device.


Friends And Related Function Documentation

friend class AdachiDemodulator [friend]
 

propertylist_Modulator not_a_function   )  [related]
 

These are the properties of class Modulator . 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: The class modulator is an abstract base class wich provides an interface for a particular modulator.

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.

bits_per_symbol
<unsigned>, default "" -- Number of bits per complex modulation symbol.

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

modulation_type
<string>, default "none" -- DEPRECATED. For the non-factory-function classes this chooses the actual implementation class, but when you specify the full classname then this is no longer needed.

input_length
<sequencelength>, default "" --

4 properties in this class.


Generated on Tue Aug 9 14:38:40 2005 for simtheticlib by  doxygen 1.4.1