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

#include <AdditiveScramblerModule.h>

Inheritance diagram for inet::physicallayer::AdditiveScramblerModule:
inet::physicallayer::IScrambler inet::IPrintableObject

Public Member Functions

virtual ~AdditiveScramblerModule ()
 
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 scramble (const BitVector &bits) const override
 
virtual BitVector descramble (const BitVector &bits) const override
 
virtual const AdditiveScramblinggetScrambling () 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 AdditiveScramblerscrambler
 

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

◆ ~AdditiveScramblerModule()

inet::physicallayer::AdditiveScramblerModule::~AdditiveScramblerModule ( )
virtual
31 {
32  delete scrambler->getScrambling();
33  delete scrambler;
34 }

Member Function Documentation

◆ descramble()

virtual BitVector inet::physicallayer::AdditiveScramblerModule::descramble ( const BitVector bits) const
inlineoverridevirtual

Implements inet::physicallayer::IScrambler.

32 { return scrambler->descramble(bits); }

◆ getScrambling()

virtual const AdditiveScrambling* inet::physicallayer::AdditiveScramblerModule::getScrambling ( ) const
inlineoverridevirtual

◆ handleMessage()

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

◆ initialize()

void inet::physicallayer::AdditiveScramblerModule::initialize ( int  stage)
overrideprotectedvirtual
16 {
17  if (stage == INITSTAGE_LOCAL) {
18  ShortBitVector seed(par("seed").stringValue());
19  ShortBitVector generatorPolynomial(par("generatorPolynomial").stringValue());
20  const AdditiveScrambling *scrambling = new AdditiveScrambling(seed, generatorPolynomial);
21  scrambler = new AdditiveScrambler(scrambling);
22  }
23 }

◆ numInitStages()

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

◆ printToStream()

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

Prints this object to the provided output stream.

Reimplemented from inet::IPrintableObject.

26 {
27  return scrambler->printToStream(stream, level);
28 }

◆ scramble()

virtual BitVector inet::physicallayer::AdditiveScramblerModule::scramble ( const BitVector bits) const
inlineoverridevirtual

Implements inet::physicallayer::IScrambler.

31 { return scrambler->scramble(bits); }

Member Data Documentation

◆ scrambler

const AdditiveScrambler* inet::physicallayer::AdditiveScramblerModule::scrambler
protected

The documentation for this class was generated from the following files:
inet::physicallayer::AdditiveScramblerModule::scrambler
const AdditiveScrambler * scrambler
Definition: AdditiveScramblerModule.h:20
inet::physicallayer::AdditiveScrambler::descramble
BitVector descramble(const BitVector &bits) const override
Definition: AdditiveScrambler.h:39
inet::physicallayer::AdditiveScrambler::printToStream
virtual std::ostream & printToStream(std::ostream &stream, int level, int evFlags=0) const override
Prints this object to the provided output stream.
Definition: AdditiveScrambler.cc:15
inet::physicallayer::AdditiveScrambler::scramble
BitVector scramble(const BitVector &bits) const override
Definition: AdditiveScrambler.cc:23
inet::INITSTAGE_LOCAL
INET_API InitStage INITSTAGE_LOCAL
Initialization of local state that don't use or affect other modules includes:
inet::physicallayer::AdditiveScrambler::getScrambling
const AdditiveScrambling * getScrambling() const override
Definition: AdditiveScrambler.h:40
NUM_INIT_STAGES
#define NUM_INIT_STAGES
Definition: InitStageRegistry.h:73