Delayer

Package: inet.common.queue

Delayer

simple module

Delayer module.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Parameters

Name Type Default value Description
delay double 0s

delay [seconds] e.g. uniform(20ms,40ms)

Properties

Name Value Description
display i=status/lightning

Gates

Name Direction Size Description
in input
out output

Signals

Name Type Unit
sentPk cMessage
delay simtime_t
rcvdPk cMessage

Statistics

Name Title Source Record Unit Interpolation Mode
sentPk packets sent sentPk count, sum(packetBytes), vector(packetBytes) none
delay packet delay delay vector, stats none
rcvdPk packets received rcvdPk count, sum(packetBytes), vector(packetBytes) none

Source code

//
// Delayer module.
//
simple Delayer like IHook
{
    parameters:
        volatile double delay @unit(s) = default(0s);    // delay [seconds] e.g. uniform(20ms,40ms)
        @display("i=status/lightning");
        @signal[rcvdPk](type=cMessage);
        @signal[sentPk](type=cMessage);
        @signal[delay](type=simtime_t);     // delay in seconds, emitted at packet receiving
        @statistic[rcvdPk](title="packets received"; source=rcvdPk; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none);
        @statistic[sentPk](title="packets sent"; source=sentPk; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none);
        @statistic[delay](title="packet delay"; source=delay; record=vector,stats; interpolationmode=none);
    gates:
        input in;
        output out;
}
File: src/inet/common/queue/Delayer.ned