|
INET Framework for OMNeT++/OMNEST
|
#include <RadioState.h>
Public Types | |
| enum | State { IDLE, RECV, TRANSMIT, SLEEP } |
Public Member Functions | |
| RadioState (int radioModuleId) | |
| int | getRadioId () const |
| State | getState () const |
| void | setState (State s) |
| int | getChannelNumber () const |
| void | setChannelNumber (int chan) |
| double | getBitrate () const |
| void | setBitrate (double d) |
| std::string | info () const |
Static Public Member Functions | |
| static const char * | stateName (State state) |
Private Attributes | |
| int | radioId |
| State | state |
| int | channelNumber |
| double | bitrate |
Holds the current state and other properties of the radio. Possible states are:
| enum RadioState::State |
| RadioState::RadioState | ( | int | radioModuleId | ) | [inline] |
Constructor
: cPolymorphic() {
radioId = radioModuleId; state = IDLE; channelNumber = -1; bitrate = -1;
}
| double RadioState::getBitrate | ( | ) | const [inline] |
function to get the bitrate
Referenced by AbstractRadio::encapsulatePacket(), SnrEval::handleCommand(), AbstractRadio::handleCommand(), and AbstractRadio::setBitrate().
{ return bitrate; }
| int RadioState::getChannelNumber | ( | ) | const [inline] |
function to get the channel number (frequency)
Referenced by SnrEval::changeChannel(), AbstractRadio::changeChannel(), SnrEval::handleCommand(), AbstractRadio::handleCommand(), SnrEval::initialize(), and AbstractRadio::initialize().
{ return channelNumber; }
| int RadioState::getRadioId | ( | ) | const [inline] |
id of the radio/snrEval module -- identifies the radio in case there're more than one in the host
{ return radioId; }
| State RadioState::getState | ( | ) | const [inline] |
Returns radio state
Referenced by SnrEval::changeChannel(), AbstractRadio::changeChannel(), SnrEval::handleCommand(), AbstractRadio::handleCommand(), SnrEval::handleLowerMsgEnd(), GilbertElliotSnr::handleLowerMsgEnd(), AbstractRadio::handleLowerMsgEnd(), SnrEval::handleLowerMsgStart(), GilbertElliotSnr::handleLowerMsgStart(), AbstractRadio::handleLowerMsgStart(), SnrEval::handleUpperMsg(), AbstractRadio::handleUpperMsg(), SnrEval::setBitrate(), and AbstractRadio::setBitrate().
{ return state; }
| std::string RadioState::info | ( | ) | const [inline] |
Enables inspection
Referenced by operator<<().
{
std::stringstream out;
out << stateName(state) << ", channel #" << channelNumber << ", " << (bitrate/1e6) << "Mbps ";
return out.str();
}
| void RadioState::setBitrate | ( | double | d | ) | [inline] |
set the bitrate
Referenced by AbstractRadio::initialize(), and AbstractRadio::setBitrate().
{ bitrate = d; }
| void RadioState::setChannelNumber | ( | int | chan | ) | [inline] |
set the channel number (frequency)
Referenced by SnrEval::changeChannel(), AbstractRadio::changeChannel(), SnrEval::initialize(), and AbstractRadio::initialize().
{ channelNumber = chan; }
| void RadioState::setState | ( | State | s | ) | [inline] |
Sets the radio state
Referenced by SnrEval::handleLowerMsgEnd(), GilbertElliotSnr::handleLowerMsgEnd(), SnrEval::handleLowerMsgStart(), GilbertElliotSnr::handleLowerMsgStart(), SnrEval::handleSelfMsg(), GilbertElliotSnr::handleSelfMsg(), SnrEval::handleUpperMsg(), SnrEval::initialize(), AbstractRadio::initialize(), and AbstractRadio::setRadioState().
{ state = s; }
| static const char* RadioState::stateName | ( | State | state | ) | [inline, static] |
double RadioState::bitrate [private] |
int RadioState::channelNumber [private] |
int RadioState::radioId [private] |
State RadioState::state [private] |