?? decider80211.h
字號:
/*************************************************************************** * file: Decider80211.h * * authors: David Raguin / Marc Loebbers * * copyright: (C) 2004 Telecommunication Networks Group (TKN) at * Technische Universitaet Berlin, Germany. * * This program is free software; you can redistribute it * and/or modify it under the terms of the GNU General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later * version. * For further information see file COPYING * in the top level directory *************************************************************************** * part of: framework implementation developed by tkn * description: decider module for the 802.11 protocol *************************************************************************** * changelog: $Revision$ * last modified: $Date: 2004-08-16 18:18:47 +0200 (Mon, 16 Aug 2004) $ * by: $Author: omfw-willkomm $ **************************************************************************/#ifndef DECIDER_80211_H#define DECIDER_80211_H#include <omnetpp.h>#include <BasicDecider.h>/** * @brief Decider for the 802.11 modules * * Depending on the minimum of the snr included in the PhySDU this * module computes a bit error probability. The header (1 Mbit/s) is * always modulated with DBQPSK. The PDU is normally modulated either * with DBPSK (1 and 2 Mbit/s) or CCK (5.5 and 11 Mbit/s). CCK is not * easy to model, therefore it is modeled as DQPSK with a 16-QAM for * 5.5 Mbit/s and a 256-QAM for 11 Mbit/s. * * * @ingroup decider * @author Marc L鯾bers, David Raguin */class Decider80211 : public BasicDecider{ Module_Class_Members(Decider80211, BasicDecider,0); protected: public: /** @brief Initialization of the module and some variables*/ virtual void initialize(int); protected: /** * @brief In this function the decision whether a frame is received * correctly or not is made. **/ virtual void handleLowerMsg(AirFrame*, SnrList&); /**\brief converts a dB value into a normal fraction*/ double dB2fraction(double); /**\brief computes if packet is ok or has errors*/ bool packetOk(double, int);#ifdef _WIN32 /** * @brief Implementation of the error function * * Unfortunately the windows math library does not provide an * implementation of the error function, so we use an own * implementation (Thanks to Jirka Klaue) * * @author Jirka Klaue **/ double erfc(double);#endif protected: /**\brief should be set in the omnetpp.ini*/ double bitrate; /**\brief should be set in the omnetpp.ini; everthing below this threshold can't be read and is therefor considered as a collision*/ double snirThreshold;};#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -