INET Framework for OMNeT++/OMNEST
|
A cDatarateChannel extended with throughput calculation. More...
#include <ThruputMeteringChannel.h>
Public Member Functions | |
ThruputMeteringChannel (const char *name=nullptr) | |
Constructor. More... | |
virtual | ~ThruputMeteringChannel () |
Copy constructor. More... | |
virtual void | initialize () override |
Assignment. More... | |
virtual void | processMessage (cMessage *msg, simtime_t t, result_t &result) override |
Adds statistics and live display to the channel. More... | |
Protected Member Functions | |
virtual void | beginNewInterval (simtime_t now) |
virtual void | refreshDisplay () const override |
Protected Attributes | |
const char * | fmt |
unsigned int | batchSize |
simtime_t | maxInterval |
long | numPackets |
double | numBits |
simtime_t | intvlStartTime |
simtime_t | intvlLastPkTime |
unsigned long | intvlNumPackets |
unsigned long | intvlNumBits |
double | currentBitPerSec |
double | currentPkPerSec |
A cDatarateChannel extended with throughput calculation.
Values get displayed on the link, using the connection's "t=" display string tag.
The display can be customized with the "format" attribute. In the format string, the following characters will get expanded:
"Current" actually means the last measurement interval, which is 10 packets or 0.1s, whichever comes first.
PROBLEM: display only gets updated if there's traffic! (For example, a high pk/sec value might stay displayed even when the link becomes idle!)
|
explicit |
Constructor.
|
virtual |
|
protectedvirtual |
Referenced by processMessage().
|
overridevirtual |
Assignment.
Creates and returns an exact copy of this object. See cObject for more details. Add parameters and initialize the stat variables
|
overridevirtual |
Adds statistics and live display to the channel.
|
overrideprotectedvirtual |
|
protected |
Referenced by processMessage(), and ThruputMeteringChannel().
|
protected |
Referenced by beginNewInterval(), refreshDisplay(), and ThruputMeteringChannel().
|
protected |
Referenced by beginNewInterval(), refreshDisplay(), and ThruputMeteringChannel().
|
protected |
Referenced by initialize(), processMessage(), refreshDisplay(), and ThruputMeteringChannel().
|
protected |
Referenced by processMessage(), and ThruputMeteringChannel().
|
protected |
Referenced by beginNewInterval(), processMessage(), and ThruputMeteringChannel().
|
protected |
Referenced by beginNewInterval(), processMessage(), and ThruputMeteringChannel().
|
protected |
Referenced by beginNewInterval(), processMessage(), and ThruputMeteringChannel().
|
protected |
Referenced by processMessage(), and ThruputMeteringChannel().
|
protected |
Referenced by processMessage(), refreshDisplay(), and ThruputMeteringChannel().
|
protected |
Referenced by processMessage(), refreshDisplay(), and ThruputMeteringChannel().