QueueingPacketDelayer

Package: inet.queueing.common

QueueingPacketDelayer

compound module

(no description)

queue : like IPacketQueue

PacketQueue: This module implements a widely configurable packet queue, which is suitable among others, to be...

IPacketQueue: This module interface is implemented by packet queue modules.

Source:
queue: <default("PacketQueue")> like IPacketQueue {
    parameters:
        @display("p=150,100");
} server : like IPacketServer

PacketServer: This module repeatedly pulls packets from the connected packet provider and after a processing...

IPacketServer: This module interface is implemented by packet server modules.

Source:
server: <default("PacketServer")> like IPacketServer {
    parameters:
        processingTime = default(delay);
        @display("p=350,100");
}

Usage diagram

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram

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

Parameters

Name Type Default value Description
clockModule string ""

relative path of a module that implements IClock; optional

delay double

Properties

Name Value Description
class PacketDelayer
display i=block/delay

Gates

Name Direction Size Description
in input
out output

Source code

module QueueingPacketDelayer like IPacketDelayer
{
    parameters:
        string clockModule = default(""); // relative path of a module that implements IClock; optional
        volatile double delay @unit(s);
        *.clockModule = default(absPath("^" + clockModule));
        @class(PacketDelayer);
        @display("i=block/delay");
    gates:
        input in @labels(push);
        output out @labels(push);
    submodules:
        queue: <default("PacketQueue")> like IPacketQueue {
            parameters:
                @display("p=150,100");
        }
        server: <default("PacketServer")> like IPacketServer {
            parameters:
                processingTime = default(delay);
                @display("p=350,100");
        }
    connections:
        in --> { @display("m=w"); } --> queue.in;
        queue.out --> server.in;
        server.out --> { @display("m=e"); } --> out;
}

File: src/inet/queueing/common/QueueingPacketDelayer.ned