Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | Related Pages

GilbertElliotSnr Class Reference
[snrEval - modules for attenuation and interference calculation]

Keeps track of the different snir levels when receiving a packet and switches between states GOOD and BAD (Gilbert-Elliot-Model). More...

#include <GilbertElliotSnr.h>

Inherits SnrEval.

Inheritance diagram for GilbertElliotSnr:

Inheritance graph
[legend]
Collaboration diagram for GilbertElliotSnr:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual void initialize (int)
 Initialize variables and publish the radio status.
virtual void finish ()

Protected Types

enum  State { GOOD, BAD }
 Gilbert-Elliot state types.

Protected Member Functions

virtual void handleSelfMsg (cMessage *)
 Handle state change timer.
virtual void handleLowerMsgStart (AirFrame *)
 Assigns bit errors to all messages.
virtual void handleLowerMsgEnd (AirFrame *)
 Assigns bit errors to all messages.

Protected Attributes

State state
 System state.
double meanGood
 mean value to compute the time the xystem stays in the GOOD state
double meanBad
 mean value to compute the time the xystem stays in the BAD state
cMessage * stateChange
 timer to indicate a change of state

Private Member Functions

 Module_Class_Members (GilbertElliotSnr, SnrEval, 0)

Detailed Description

Keeps track of the different snir levels when receiving a packet and switches between states GOOD and BAD (Gilbert-Elliot-Model).

This module has exactly the same functionality as the SnrEval module, but furthermore it puts a Gilbert-Elliot model on top of the SNIR level computation. This means that it changes between the states GOOD and BAD. If it is in state BAD a received frame will be marked as corrupted.

The Gilbert Elliot model is used to simulate outer system disturbances.

This module should be used in combination with the GilbertElliotDecider moulde which evaluates the snr levels as well as the marked frames.

Author:
Marc Loebbers


Member Function Documentation

void GilbertElliotSnr::handleLowerMsgEnd AirFrame *   )  [protected, virtual]
 

Assigns bit errors to all messages.

A bad state may be so long that it spans several recvBuffers -- this case is caught here.

Reimplemented from SnrEval.

void GilbertElliotSnr::handleLowerMsgStart AirFrame *   )  [protected, virtual]
 

Assigns bit errors to all messages.

A bad state may be so long that it spans several recvBuffers -- this case is caught here.

Reimplemented from SnrEval.

void GilbertElliotSnr::handleSelfMsg cMessage *   )  [protected, virtual]
 

Handle state change timer.

Assigns bit errors to all messages currently in the recvBuffer

Reimplemented from BasicSnrEval.

void GilbertElliotSnr::initialize int  stage  )  [virtual]
 

Initialize variables and publish the radio status.

All values not present in the ned file will be read from the ChannelControl module or assigned default values.

Reimplemented from SnrEval.


The documentation for this class was generated from the following files:
Generated on Fri Jan 12 08:30:00 2007 for Mobility Framework by  doxygen 1.4.4