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

Decider80211.h

00001 /* -*- mode:c++ -*- *******************************************************
00002  * file:        Decider80211.h
00003  *
00004  * authors:     David Raguin / Marc Loebbers
00005  *
00006  * copyright:   (C) 2004 Telecommunication Networks Group (TKN) at
00007  *              Technische Universitaet Berlin, Germany.
00008  *
00009  *              This program is free software; you can redistribute it
00010  *              and/or modify it under the terms of the GNU General Public
00011  *              License as published by the Free Software Foundation; either
00012  *              version 2 of the License, or (at your option) any later
00013  *              version.
00014  *              For further information see file COPYING
00015  *              in the top level directory
00016  ***************************************************************************
00017  * part of:     framework implementation developed by tkn
00018  **************************************************************************/
00019 
00020 
00021 #ifndef  DECIDER_80211_H
00022 #define  DECIDER_80211_H
00023 
00024 #include <omnetpp.h>
00025 
00026 #include <BasicLayer.h>
00027 #include <AirFrame80211_m.h>
00028 #include "Consts80211.h"
00029 #include "PhyControlInfo.h"
00030 
00045 class  Decider80211 : public BasicLayer
00046 {
00047     Module_Class_Members(Decider80211, BasicLayer,0);
00048 
00049 public:
00051     virtual void initialize(int);
00052     
00053 protected:
00058     virtual void  handleLowerMsg(cMessage *msg);
00059 
00063     virtual void handleUpperMsg(cMessage *msg) {
00064         error("Decider80211 does not handle messages from upper layers");
00065     }
00066     
00067     virtual void handleSelfMsg(cMessage *msg) {
00068         error("Decider80211 does not handle selfmessages");
00069     }
00070     
00074     virtual void handleLowerControl(cMessage *msg) {
00075         sendControlUp(msg);
00076     };
00077 
00079     double dB2fraction(double);
00080 
00082     bool packetOk(double, int, double bitrate);
00083     
00084 #ifdef _WIN32
00085 
00094     double erfc(double);
00095 #endif
00096 
00097  protected:
00099     double bitrate;
00103     double snirThreshold;
00104 
00105 };
00106 #endif
00107 
00108 

Generated on Fri Jan 12 08:29:32 2007 for Mobility Framework by  doxygen 1.4.4