PacketDemultiplexer

Package: inet.queueing.common

simple module PacketDemultiplexer

Connects multiple packet collectors to one packet provider. When a packet is pulled by one of the connected packet collectors, then the demultiplexer simply pulls a packet from the connected packet provider.

inet.queueing.common.PacketDemultiplexerPacketDemultiplexersimple

Inheritance diagram

Extends

Name

Type

Description

PacketProcessorBase

simple module

Base module for various packet processing modules which maintains a few statistics.

Parameters

Name

Type

Default value

Description

displayStringTextFormat

string

“passed %p pk (%l)”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

Properties

Name

Value

Description

class

PacketDemultiplexer

display

i=block/fork

Gates

Name

Direction

Size

Description

in

input

out [ ]

output

Source code

//
// Connects multiple packet collectors to one packet provider. When
// a packet is pulled by one of the connected packet collectors, then the demultiplexer
// simply pulls a packet from the connected packet provider.
//
simple PacketDemultiplexer extends PacketProcessorBase like IActivePacketSink // TODO , IPassivePacketSource // out gate is vector
{
    parameters:
        displayStringTextFormat = default("passed %p pk (%l)");
        @class(PacketDemultiplexer);
        @display("i=block/fork");
    gates:
        input in @labels(pull);
        output out[] @labels(pull);
}

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