Package: inet.showcases.tsn.streamfiltering.underthehood
PeekingUnderTheHoodShowcase
network(no description)
Usage diagram
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| numSources | int |
Properties
| Name | Value | Description |
|---|---|---|
| isNetwork |
Unassigned submodule parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| sources.displayStringTextFormat | string | "created %p pk (%l)" |
determines the text that is written on top of the submodule |
| sources.packetNameFormat | string | "%a-%c" |
see directives in module documentation |
| sources.packetRepresentation | string | "byteCount" |
determines the chunk of the packet data |
| sources.packetLength | int | ||
| sources.packetData | int | -1 | |
| sources.attachCreationTimeTag | bool | true | |
| sources.attachIdentityTag | bool | true | |
| sources.attachDirectionTag | bool | true | |
| sources.clockModule | string | "" |
relative path of a module that implements IClock(1,2); optional |
| sources.initialProductionOffset | double | 0s | |
| sources.productionInterval | double |
elapsed time between subsequent packets pushed to the connected packet consumer |
|
| sources.scheduleForAbsoluteTime | bool | true |
when a clock is used relative means that setting the clock will not affect the simulation time of the event |
| multiplexer.displayStringTextFormat | string | "passed %p pk (%l)" |
determines the text that is written on top of the submodule |
| multiplexer.forwardServiceRegistration | bool | true | |
| multiplexer.forwardProtocolRegistration | bool | true | |
| identifier.displayStringTextFormat | string | "processed %p pk (%l)" |
determines the text that is written on top of the submodule |
| identifier.hasSequenceNumbering | bool | true | |
| identifier.mapping | object | [] |
array of objects, where each object specifies a stream name and a packetFilter, for example [{stream: "s0", packetFilter: "*"}, ...] |
| sink.displayStringTextFormat | string | "received %p pk (%l)" |
determines the text that is written on top of the submodule |
| sink.clockModule | string | "" |
relative path of a module that implements IClock(1,2); optional |
| sink.consumptionInterval | double | 0s |
elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time |
| sink.scheduleForAbsoluteTime | bool | true |
when a clock is used relative means that setting the clock will not affect the simulation time of the event |
Source code
network PeekingUnderTheHoodShowcase { parameters: int numSources; submodules: sources[numSources]: ActivePacketSource { @display("p=100,100,column,150"); } multiplexer: PacketMultiplexer { @display("p=300,100"); } identifier: StreamIdentifier { @display("p=500,100"); } filter: <default("SimpleIeee8021qFilter")> like IPacketFilter { @display("p=700,100"); } sink: PassivePacketSink { @display("p=900,100"); } connections: for i=0..numSources-1 { sources[i].out --> multiplexer.in++; } multiplexer.out --> identifier.in; identifier.out --> filter.in; filter.out --> sink.in; }File: showcases/tsn/streamfiltering/underthehood/PeekingUnderTheHoodShowcase.ned