INET Framework for OMNeT++/OMNEST
inet::physicallayer::Ieee80211OfdmInterleaverModule Class Reference

#include <Ieee80211OfdmInterleaverModule.h>

Inheritance diagram for inet::physicallayer::Ieee80211OfdmInterleaverModule:
inet::physicallayer::IInterleaver inet::IPrintableObject

Public Member Functions

virtual ~Ieee80211OfdmInterleaverModule ()
 
virtual std::ostream & printToStream (std::ostream &stream, int level, int evFlags=0) const override
 Prints this object to the provided output stream. More...
 
virtual BitVector interleave (const BitVector &bits) const override
 
virtual BitVector deinterleave (const BitVector &bits) const override
 
virtual const Ieee80211OfdmInterleavinggetInterleaving () const override
 
- Public Member Functions inherited from inet::IPrintableObject
virtual ~IPrintableObject ()
 
virtual std::string printToString () const
 
virtual std::string printToString (int level, int evFlags=0) const
 
virtual std::string getInfoStringRepresentation (int evFlags=0) const
 
virtual std::string getDetailStringRepresentation (int evFlags=0) const
 
virtual std::string getDebugStringRepresentation (int evFlags=0) const
 
virtual std::string getTraceStringRepresentation (int evFlags=0) const
 
virtual std::string getCompleteStringRepresentation (int evFlags=0) const
 

Protected Member Functions

virtual int numInitStages () const override
 
virtual void initialize (int stage) override
 
virtual void handleMessage (cMessage *msg) override
 

Protected Attributes

const Ieee80211OfdmInterleaverinterleaver = nullptr
 

Additional Inherited Members

- Public Types inherited from inet::IPrintableObject
enum  PrintLevel {
  PRINT_LEVEL_TRACE, PRINT_LEVEL_DEBUG, PRINT_LEVEL_DETAIL, PRINT_LEVEL_INFO,
  PRINT_LEVEL_COMPLETE = INT_MIN
}
 
enum  PrintFlag { PRINT_FLAG_FORMATTED = (1 << 0), PRINT_FLAG_MULTILINE = (1 << 1) }
 

Constructor & Destructor Documentation

◆ ~Ieee80211OfdmInterleaverModule()

inet::physicallayer::Ieee80211OfdmInterleaverModule::~Ieee80211OfdmInterleaverModule ( )
virtual
32 {
33  delete interleaver->getInterleaving();
34  delete interleaver;
35 }

Member Function Documentation

◆ deinterleave()

virtual BitVector inet::physicallayer::Ieee80211OfdmInterleaverModule::deinterleave ( const BitVector bits) const
inlineoverridevirtual

Implements inet::physicallayer::IInterleaver.

32 { return interleaver->deinterleave(bits); }

◆ getInterleaving()

virtual const Ieee80211OfdmInterleaving* inet::physicallayer::Ieee80211OfdmInterleaverModule::getInterleaving ( ) const
inlineoverridevirtual

◆ handleMessage()

virtual void inet::physicallayer::Ieee80211OfdmInterleaverModule::handleMessage ( cMessage *  msg)
inlineoverrideprotectedvirtual
25 { throw cRuntimeError("This module doesn't handle self messages."); }

◆ initialize()

void inet::physicallayer::Ieee80211OfdmInterleaverModule::initialize ( int  stage)
overrideprotectedvirtual
17 {
18  if (stage == INITSTAGE_LOCAL) {
19  int numberOfCodedBitsPerSymbol = par("numberOfCodedBitsPerSymbol");
20  int numberOfCodedBitsPerSubcarrier = par("numberOfCodedBitsPerSubcarrier");
21  const Ieee80211OfdmInterleaving *interleaving = new Ieee80211OfdmInterleaving(numberOfCodedBitsPerSymbol, numberOfCodedBitsPerSubcarrier);
22  interleaver = new Ieee80211OfdmInterleaver(interleaving);
23  }
24 }

◆ interleave()

virtual BitVector inet::physicallayer::Ieee80211OfdmInterleaverModule::interleave ( const BitVector bits) const
inlineoverridevirtual

Implements inet::physicallayer::IInterleaver.

31 { return interleaver->interleave(bits); }

◆ numInitStages()

virtual int inet::physicallayer::Ieee80211OfdmInterleaverModule::numInitStages ( ) const
inlineoverrideprotectedvirtual
23 { return NUM_INIT_STAGES; }

◆ printToStream()

std::ostream & inet::physicallayer::Ieee80211OfdmInterleaverModule::printToStream ( std::ostream &  stream,
int  level,
int  evFlags = 0 
) const
overridevirtual

Prints this object to the provided output stream.

Reimplemented from inet::IPrintableObject.

27 {
28  return interleaver->printToStream(stream, level);
29 }

Member Data Documentation

◆ interleaver

const Ieee80211OfdmInterleaver* inet::physicallayer::Ieee80211OfdmInterleaverModule::interleaver = nullptr
protected

The documentation for this class was generated from the following files:
inet::physicallayer::Ieee80211OfdmInterleaver::printToStream
virtual std::ostream & printToStream(std::ostream &stream, int level, int evFlags=0) const override
Prints this object to the provided output stream.
Definition: Ieee80211OfdmInterleaver.cc:14
inet::physicallayer::Ieee80211OfdmInterleaverModule::interleaver
const Ieee80211OfdmInterleaver * interleaver
Definition: Ieee80211OfdmInterleaverModule.h:20
inet::physicallayer::Ieee80211OfdmInterleaver::getInterleaving
const Ieee80211OfdmInterleaving * getInterleaving() const override
Definition: Ieee80211OfdmInterleaver.h:40
inet::physicallayer::Ieee80211OfdmInterleaver::deinterleave
BitVector deinterleave(const BitVector &bits) const override
Definition: Ieee80211OfdmInterleaver.cc:45
inet::INITSTAGE_LOCAL
INET_API InitStage INITSTAGE_LOCAL
Initialization of local state that don't use or affect other modules includes:
NUM_INIT_STAGES
#define NUM_INIT_STAGES
Definition: InitStageRegistry.h:73
inet::physicallayer::Ieee80211OfdmInterleaver::interleave
BitVector interleave(const BitVector &bits) const override
Definition: Ieee80211OfdmInterleaver.cc:22