File NetworkInterfaces/MFCore/BasicSnrEval.ned

Contains:

//****************************************************************************
// * file:        BasicSnrEval.h
// *
// * author:      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
// ***************************************************************************/


//
// The basic class for all snrEval modules
//
// The BasicSnrEval module provides functionality like en- and
// decapsulation of messages. If you use the standard message formats
// everythng should work fine. Before a packet is sent some
// information, e.g. transmission power, can be written to the
// AirFrame header. If you write your own snrEval, just subclass and
// redefine the handleUpperMsg function (see description of the
// function). After receiving a message it can be processed in
// handleLowerMsgStart. Then it is buffered for the time the
// transmission would last in reality, and then can be handled
// again. Again you can redefine the 1. handleLowerMsgStart and
// 2. handleLowerMsgEnd for your own needs (see description). So, the
// call of these functions represent the following events: 1. received
// a message (i.e. transmission startet) 2. message will be handed on
// to the upper layer (i.e. transmission time is over)
//
// @see SnrEval
// @author Marc Loebbers
//
simple BasicSnrEval
    parameters:
    coreDebug : numeric const, // debug switch for the core framework
        transmitterPower : numeric, // power used for transmission of messages (in mW)
    bitrate: numeric, // bitrate (in bits/sec)
    headerLength: numeric const; // header length of the AirFrame (in bits)
    gates:
        in: uppergateIn; // from the MAC layer
        out: uppergateOut; // to the decider sub-module
        in: radioIn; // to receive AirFrames
endsimple