|
INET Framework for OMNeT++/OMNEST
|
#include <AnsaEtherMACBase.h>
Base class for ethernet MAC implementations.
Definition at line 61 of file AnsaEtherMACBase.h.
Definition at line 31 of file AnsaEtherMACBase.cc.
| AnsaEtherMACBase::~AnsaEtherMACBase | ( | ) | [virtual] |
Definition at line 39 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::beginSendFrames | ( | ) | [protected, virtual] |
Definition at line 541 of file AnsaEtherMACBase.cc.
Referenced by handleEndPausePeriod(), and AnsaEtherMAC::handleEndTxPeriod().
| void AnsaEtherMACBase::calculateParameters | ( | ) | [protected, virtual] |
Definition at line 246 of file AnsaEtherMACBase.cc.
Referenced by AnsaEtherMAC::handleAutoconfigMessage(), and AnsaEtherMAC::initialize().
| bool AnsaEtherMACBase::checkAndScheduleEndPausePeriod | ( | ) | [protected, virtual] |
Definition at line 526 of file AnsaEtherMACBase.cc.
Referenced by AnsaEtherMAC::handleEndTxPeriod().
| bool AnsaEtherMACBase::checkDestinationAddress | ( | EtherFrame * | frame | ) | [protected, virtual] |
Definition at line 229 of file AnsaEtherMACBase.cc.
Referenced by processReceivedDataFrame().
| void AnsaEtherMACBase::finish | ( | ) | [protected, virtual] |
Reimplemented in AnsaEtherMAC.
Definition at line 574 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::fireChangeNotification | ( | int | type, |
| cPacket * | msg | ||
| ) | [protected, virtual] |
Definition at line 566 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::frameReceptionComplete | ( | EtherFrame * | frame | ) | [protected, virtual] |
Definition at line 357 of file AnsaEtherMACBase.cc.
Referenced by AnsaEtherMAC::handleEndRxPeriod(), and AnsaEtherMAC::processMsgFromNetwork().
| virtual InterfaceEntry* AnsaEtherMACBase::getInterfaceEntry | ( | void | ) | [inline, virtual] |
Definition at line 137 of file AnsaEtherMACBase.h.
Referenced by receiveChangeNotification().
{ return interfaceEntry; }
| virtual MACAddress AnsaEtherMACBase::getMACAddress | ( | ) | [inline, virtual] |
Definition at line 132 of file AnsaEtherMACBase.h.
{return address;}
| virtual long AnsaEtherMACBase::getQueueLength | ( | ) | [inline, virtual] |
Definition at line 131 of file AnsaEtherMACBase.h.
{return txQueue.length();}
| void AnsaEtherMACBase::handleEndIFGPeriod | ( | ) | [protected, virtual] |
Reimplemented in AnsaEtherMAC.
Definition at line 430 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::handleEndPausePeriod | ( | ) | [protected, virtual] |
Definition at line 485 of file AnsaEtherMACBase.cc.
Referenced by AnsaEtherMAC::handleMessage().
| void AnsaEtherMACBase::handleEndTxPeriod | ( | ) | [protected, virtual] |
Reimplemented in AnsaEtherMAC.
Definition at line 458 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::initialize | ( | ) | [protected, virtual] |
Reimplemented in AnsaEtherMAC.
Definition at line 46 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::initializeFlags | ( | ) | [protected, virtual] |
Definition at line 131 of file AnsaEtherMACBase.cc.
Referenced by initialize().
| void AnsaEtherMACBase::initializeMACAddress | ( | ) | [protected, virtual] |
Definition at line 96 of file AnsaEtherMACBase.cc.
Referenced by initialize().
| void AnsaEtherMACBase::initializeNotificationBoard | ( | ) | [protected, virtual] |
Definition at line 114 of file AnsaEtherMACBase.cc.
Referenced by initialize().
| void AnsaEtherMACBase::initializeQueueModule | ( | ) | [protected, virtual] |
Definition at line 85 of file AnsaEtherMACBase.cc.
Referenced by initialize().
| void AnsaEtherMACBase::initializeStatistics | ( | ) | [protected, virtual] |
Definition at line 151 of file AnsaEtherMACBase.cc.
Referenced by initialize().
| virtual void AnsaEtherMACBase::initializeTxrate | ( | ) | [protected, pure virtual] |
Implemented in AnsaEtherMAC.
Referenced by initialize().
| virtual bool AnsaEtherMACBase::isDisabled | ( | void | ) | [inline, virtual] |
Definition at line 135 of file AnsaEtherMACBase.h.
Referenced by receiveChangeNotification().
{ return disabled; }
| void AnsaEtherMACBase::printParameters | ( | ) | [protected, virtual] |
Definition at line 279 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::processFrameFromUpperLayer | ( | EtherFrame * | msg | ) | [protected, virtual] |
Reimplemented in AnsaEtherMAC.
Definition at line 294 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::processMessageWhenDisabled | ( | cMessage * | msg | ) | [protected, virtual] |
Definition at line 500 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::processMessageWhenNotConnected | ( | cMessage * | msg | ) | [protected, virtual] |
Definition at line 493 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::processMsgFromNetwork | ( | cPacket * | msg | ) | [protected, virtual] |
Reimplemented in AnsaEtherMAC.
Definition at line 340 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::processPauseCommand | ( | int | pauseUnits | ) | [protected, virtual] |
Definition at line 406 of file AnsaEtherMACBase.cc.
Referenced by frameReceptionComplete().
| void AnsaEtherMACBase::processReceivedDataFrame | ( | EtherFrame * | frame | ) | [protected, virtual] |
Definition at line 376 of file AnsaEtherMACBase.cc.
Referenced by frameReceptionComplete().
| void AnsaEtherMACBase::receiveChangeNotification | ( | int | category, |
| const cPolymorphic * | details | ||
| ) | [protected, virtual] |
Called by the NotificationBoard whenever a change of a category occurs to which this client has subscribed.
Implements INotifiable.
Definition at line 675 of file AnsaEtherMACBase.cc.
| void AnsaEtherMACBase::registerInterface | ( | double | txrate | ) | [protected, virtual] |
Definition at line 188 of file AnsaEtherMACBase.cc.
Referenced by initialize().
| void AnsaEtherMACBase::scheduleEndIFGPeriod | ( | ) | [protected, virtual] |
Definition at line 506 of file AnsaEtherMACBase.cc.
Referenced by beginSendFrames(), AnsaEtherMAC::handleAutoconfigMessage(), AnsaEtherMAC::handleEndBackoffPeriod(), AnsaEtherMAC::handleEndRxPeriod(), and AnsaEtherMAC::processFrameFromUpperLayer().
| void AnsaEtherMACBase::scheduleEndPausePeriod | ( | int | pauseUnits | ) | [protected, virtual] |
Definition at line 518 of file AnsaEtherMACBase.cc.
Referenced by checkAndScheduleEndPausePeriod(), and processPauseCommand().
| void AnsaEtherMACBase::scheduleEndTxPeriod | ( | cPacket * | frame | ) | [protected, virtual] |
Definition at line 512 of file AnsaEtherMACBase.cc.
Referenced by AnsaEtherMAC::startFrameTransmission().
| virtual void AnsaEtherMACBase::setDisabled | ( | bool | b | ) | [inline, virtual] |
Definition at line 134 of file AnsaEtherMACBase.h.
Referenced by receiveChangeNotification().
{ disabled = b; }
| void AnsaEtherMACBase::updateConnectionColor | ( | int | txState | ) | [protected, virtual] |
Definition at line 656 of file AnsaEtherMACBase.cc.
Referenced by AnsaEtherMAC::sendJamSignal(), AnsaEtherMAC::startFrameTransmission(), and updateDisplayString().
| void AnsaEtherMACBase::updateDisplayString | ( | ) | [protected, virtual] |
Definition at line 604 of file AnsaEtherMACBase.cc.
Referenced by AnsaEtherMAC::handleMessage().
| virtual void AnsaEtherMACBase::updateHasSubcribers | ( | ) | [protected, pure virtual] |
Implemented in AnsaEtherMAC.
Referenced by initializeNotificationBoard(), and receiveChangeNotification().
MACAddress AnsaEtherMACBase::address [protected] |
Definition at line 67 of file AnsaEtherMACBase.h.
Referenced by checkDestinationAddress(), initializeMACAddress(), printParameters(), processFrameFromUpperLayer(), and registerInterface().
simtime_t AnsaEtherMACBase::bitTime [protected] |
Definition at line 77 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), printParameters(), AnsaEtherMAC::processMsgFromNetwork(), scheduleEndPausePeriod(), AnsaEtherMAC::scheduleEndRxPeriod(), and scheduleEndTxPeriod().
int AnsaEtherMACBase::bytesSentInBurst [protected] |
Definition at line 104 of file AnsaEtherMACBase.h.
Referenced by handleEndIFGPeriod(), AnsaEtherMAC::handleEndTxPeriod(), initializeStatistics(), and AnsaEtherMAC::startFrameTransmission().
bool AnsaEtherMACBase::carrierExtension [protected] |
Definition at line 72 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), AnsaEtherMAC::handleEndIFGPeriod(), handleEndIFGPeriod(), and printParameters().
bool AnsaEtherMACBase::connected [protected] |
Definition at line 64 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), AnsaEtherMAC::initialize(), initializeFlags(), and receiveChangeNotification().
bool AnsaEtherMACBase::disabled [protected] |
Definition at line 65 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), finish(), AnsaEtherMAC::handleMessage(), AnsaEtherMAC::initialize(), and initializeFlags().
bool AnsaEtherMACBase::duplexMode [protected] |
Definition at line 71 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), finish(), AnsaEtherMAC::handleAutoconfigMessage(), AnsaEtherMAC::handleEndTxPeriod(), handleEndTxPeriod(), AnsaEtherMAC::handleMessage(), AnsaEtherMAC::initialize(), printParameters(), AnsaEtherMAC::processFrameFromUpperLayer(), AnsaEtherMAC::processMsgFromNetwork(), processMsgFromNetwork(), AnsaEtherMAC::startAutoconfig(), and AnsaEtherMAC::startFrameTransmission().
cMessage * AnsaEtherMACBase::endIFGMsg [protected] |
Definition at line 100 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMACBase(), initialize(), scheduleEndIFGPeriod(), and ~AnsaEtherMACBase().
cMessage * AnsaEtherMACBase::endPauseMsg [protected] |
Definition at line 100 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMACBase(), initialize(), processPauseCommand(), scheduleEndPausePeriod(), and ~AnsaEtherMACBase().
cMessage* AnsaEtherMACBase::endTxMsg [protected] |
Definition at line 100 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMACBase(), initialize(), AnsaEtherMAC::processMsgFromNetwork(), scheduleEndTxPeriod(), and ~AnsaEtherMACBase().
bool AnsaEtherMACBase::frameBursting [protected] |
Definition at line 73 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), handleEndIFGPeriod(), AnsaEtherMAC::handleEndTxPeriod(), printParameters(), and AnsaEtherMAC::startFrameTransmission().
int AnsaEtherMACBase::framesSentInBurst [protected] |
Definition at line 103 of file AnsaEtherMACBase.h.
Referenced by handleEndIFGPeriod(), initializeStatistics(), and AnsaEtherMAC::startFrameTransmission().
bool AnsaEtherMACBase::hasSubscribers [protected] |
Definition at line 97 of file AnsaEtherMACBase.h.
Referenced by initializeNotificationBoard(), and AnsaEtherMAC::updateHasSubcribers().
InterfaceEntry* AnsaEtherMACBase::interfaceEntry [protected] |
Definition at line 94 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMACBase(), initializeNotificationBoard(), receiveChangeNotification(), and registerInterface().
simtime_t AnsaEtherMACBase::interFrameGap [protected] |
Definition at line 79 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), printParameters(), and scheduleEndIFGPeriod().
simtime_t AnsaEtherMACBase::jamDuration [protected] |
Definition at line 80 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), AnsaEtherMAC::processMsgFromNetwork(), and AnsaEtherMAC::sendJamSignal().
NotificationBoard* AnsaEtherMACBase::nb [protected] |
Definition at line 95 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMACBase(), fireChangeNotification(), and initializeNotificationBoard().
TxNotifDetails AnsaEtherMACBase::notifDetails [protected] |
Definition at line 96 of file AnsaEtherMACBase.h.
Referenced by fireChangeNotification(), and initializeNotificationBoard().
unsigned long AnsaEtherMACBase::numBytesReceivedOK [protected] |
Definition at line 108 of file AnsaEtherMACBase.h.
Referenced by finish(), initializeStatistics(), and processReceivedDataFrame().
cOutVector AnsaEtherMACBase::numBytesReceivedOKVector [protected] |
Definition at line 119 of file AnsaEtherMACBase.h.
Referenced by initializeStatistics(), and processReceivedDataFrame().
unsigned long AnsaEtherMACBase::numBytesSent [protected] |
Definition at line 107 of file AnsaEtherMACBase.h.
Referenced by finish(), handleEndTxPeriod(), and initializeStatistics().
cOutVector AnsaEtherMACBase::numBytesSentVector [protected] |
Definition at line 118 of file AnsaEtherMACBase.h.
Referenced by handleEndTxPeriod(), and initializeStatistics().
unsigned long AnsaEtherMACBase::numDroppedBitError [protected] |
Definition at line 111 of file AnsaEtherMACBase.h.
Referenced by finish(), initializeStatistics(), and processReceivedDataFrame().
cOutVector AnsaEtherMACBase::numDroppedBitErrorVector [protected] |
Definition at line 121 of file AnsaEtherMACBase.h.
Referenced by initializeStatistics(), and processReceivedDataFrame().
unsigned long AnsaEtherMACBase::numDroppedIfaceDown [protected] |
Definition at line 110 of file AnsaEtherMACBase.h.
Referenced by finish(), initializeStatistics(), and processMessageWhenNotConnected().
cOutVector AnsaEtherMACBase::numDroppedIfaceDownVector [protected] |
Definition at line 120 of file AnsaEtherMACBase.h.
Referenced by initializeStatistics().
unsigned long AnsaEtherMACBase::numDroppedNotForUs [protected] |
Definition at line 112 of file AnsaEtherMACBase.h.
Referenced by checkDestinationAddress(), finish(), and initializeStatistics().
cOutVector AnsaEtherMACBase::numDroppedNotForUsVector [protected] |
Definition at line 122 of file AnsaEtherMACBase.h.
Referenced by checkDestinationAddress(), and initializeStatistics().
unsigned long AnsaEtherMACBase::numFramesFromHL [protected] |
Definition at line 109 of file AnsaEtherMACBase.h.
Referenced by finish(), initializeStatistics(), and processFrameFromUpperLayer().
unsigned long AnsaEtherMACBase::numFramesPassedToHL [protected] |
Definition at line 113 of file AnsaEtherMACBase.h.
Referenced by finish(), initializeStatistics(), and processReceivedDataFrame().
cOutVector AnsaEtherMACBase::numFramesPassedToHLVector [protected] |
Definition at line 123 of file AnsaEtherMACBase.h.
Referenced by initializeStatistics(), and processReceivedDataFrame().
unsigned long AnsaEtherMACBase::numFramesReceivedOK [protected] |
Definition at line 106 of file AnsaEtherMACBase.h.
Referenced by finish(), initializeStatistics(), and processReceivedDataFrame().
cOutVector AnsaEtherMACBase::numFramesReceivedOKVector [protected] |
Definition at line 117 of file AnsaEtherMACBase.h.
Referenced by initializeStatistics(), and processReceivedDataFrame().
unsigned long AnsaEtherMACBase::numFramesSent [protected] |
Definition at line 105 of file AnsaEtherMACBase.h.
Referenced by finish(), handleEndTxPeriod(), and initializeStatistics().
cOutVector AnsaEtherMACBase::numFramesSentVector [protected] |
Definition at line 116 of file AnsaEtherMACBase.h.
Referenced by handleEndTxPeriod(), and initializeStatistics().
unsigned long AnsaEtherMACBase::numPauseFramesRcvd [protected] |
Definition at line 114 of file AnsaEtherMACBase.h.
Referenced by finish(), frameReceptionComplete(), and initializeStatistics().
cOutVector AnsaEtherMACBase::numPauseFramesRcvdVector [protected] |
Definition at line 124 of file AnsaEtherMACBase.h.
Referenced by frameReceptionComplete(), and initializeStatistics().
unsigned long AnsaEtherMACBase::numPauseFramesSent [protected] |
Definition at line 115 of file AnsaEtherMACBase.h.
Referenced by finish(), handleEndTxPeriod(), and initializeStatistics().
cOutVector AnsaEtherMACBase::numPauseFramesSentVector [protected] |
Definition at line 125 of file AnsaEtherMACBase.h.
Referenced by handleEndTxPeriod(), and initializeStatistics().
int AnsaEtherMACBase::pauseUnitsRequested [protected] |
Definition at line 86 of file AnsaEtherMACBase.h.
Referenced by checkAndScheduleEndPausePeriod(), initialize(), and processPauseCommand().
cGate* AnsaEtherMACBase::physOutGate [protected] |
Definition at line 91 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMAC::initialize(), initialize(), initializeFlags(), receiveChangeNotification(), AnsaEtherMAC::sendJamSignal(), AnsaEtherMAC::startAutoconfig(), AnsaEtherMAC::startFrameTransmission(), and updateConnectionColor().
bool AnsaEtherMACBase::promiscuous [protected] |
Definition at line 66 of file AnsaEtherMACBase.h.
Referenced by checkDestinationAddress(), initializeFlags(), and printParameters().
IPassiveQueue* AnsaEtherMACBase::queueModule [protected] |
Definition at line 89 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMACBase(), beginSendFrames(), and initializeQueueModule().
int AnsaEtherMACBase::receiveState [protected] |
Definition at line 85 of file AnsaEtherMACBase.h.
Referenced by AnsaEtherMAC::handleEndBackoffPeriod(), AnsaEtherMAC::handleEndRxPeriod(), handleEndTxPeriod(), AnsaEtherMAC::handleMessage(), initialize(), AnsaEtherMAC::printState(), AnsaEtherMAC::processFrameFromUpperLayer(), AnsaEtherMAC::processMsgFromNetwork(), AnsaEtherMAC::scheduleEndRxPeriod(), AnsaEtherMAC::startFrameTransmission(), and updateDisplayString().
simtime_t AnsaEtherMACBase::shortestFrameDuration [protected] |
Definition at line 81 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), and processMsgFromNetwork().
simtime_t AnsaEtherMACBase::slotTime [protected] |
Definition at line 78 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), AnsaEtherMAC::handleRetransmission(), and printParameters().
int AnsaEtherMACBase::transmitState [protected] |
Definition at line 84 of file AnsaEtherMACBase.h.
Referenced by beginSendFrames(), AnsaEtherMAC::handleEndBackoffPeriod(), handleEndIFGPeriod(), AnsaEtherMAC::handleEndJammingPeriod(), handleEndPausePeriod(), AnsaEtherMAC::handleEndRxPeriod(), handleEndTxPeriod(), AnsaEtherMAC::handleMessage(), AnsaEtherMAC::handleRetransmission(), initialize(), AnsaEtherMAC::printState(), AnsaEtherMAC::processFrameFromUpperLayer(), AnsaEtherMAC::processMsgFromNetwork(), processPauseCommand(), scheduleEndIFGPeriod(), scheduleEndPausePeriod(), scheduleEndTxPeriod(), AnsaEtherMAC::sendJamSignal(), and updateDisplayString().
cQueue AnsaEtherMACBase::txQueue [protected] |
Definition at line 88 of file AnsaEtherMACBase.h.
Referenced by beginSendFrames(), AnsaEtherMAC::handleAutoconfigMessage(), AnsaEtherMAC::handleEndBackoffPeriod(), AnsaEtherMAC::handleEndIFGPeriod(), handleEndIFGPeriod(), AnsaEtherMAC::handleEndRxPeriod(), AnsaEtherMAC::handleEndTxPeriod(), handleEndTxPeriod(), AnsaEtherMAC::handleRetransmission(), initialize(), AnsaEtherMAC::printState(), processFrameFromUpperLayer(), and AnsaEtherMAC::startFrameTransmission().
int AnsaEtherMACBase::txQueueLimit [protected] |
Definition at line 68 of file AnsaEtherMACBase.h.
Referenced by initialize(), and processFrameFromUpperLayer().
double AnsaEtherMACBase::txrate [protected] |
Definition at line 76 of file AnsaEtherMACBase.h.
Referenced by calculateParameters(), finish(), AnsaEtherMAC::handleAutoconfigMessage(), initialize(), AnsaEtherMAC::initializeTxrate(), printParameters(), and AnsaEtherMAC::startAutoconfig().