Package: inet.protocolelement.shaper
EligibilityTimeGate
simple moduleA packet gate that operates based on the ~EligibilityTimeTag attached to the next packet waiting to be pulled through. The gate is closed if the eligibility time is greater than the current simulation time, otherwise, it is open.
This module is part of the asynchronous shaper architecture.
<b>See also:</b> ~EligibilityTimeQueue, ~EligibilityTimeFilter, ~EligibilityTimeMeter, ~EligibilityTimeTag
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Used in
| Name | Type | Description |
|---|---|---|
| PeekingUnderTheHoodShowcase | network | (no description) |
Known subclasses
| Name | Type | Description |
|---|---|---|
| Ieee8021qAsynchronousShaper | compound module |
Implements the IEEE 802.1Q asynchronous shaper. An alias for the EligibilityTimeGate module. |
Extends
| Name | Type | Description |
|---|---|---|
| PacketGateBase | simple module |
Base module for various packet gate modules. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| displayStringTextFormat | string | "eligible in {remainingEligibilityTime}\npassed %p pk (%l)" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| bitrate | double | nan bps | |
| extraLength | int | 0b | |
| extraDuration | double | 0s | |
| clockModule | string | "" |
Relative path of the module that implements IClock(1,2); optional |
Properties
| Name | Value | Description |
|---|---|---|
| class | EligibilityTimeGate | |
| display | i=block/cogwheel |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| in | input | ||
| out | output |
Signals
| Name | Type | Unit | Description |
|---|---|---|---|
| remainingEligibilityTimeChanged | simtime_t |
Statistics
| Name | Title | Source | Record | Unit | Interpolation Mode | Description |
|---|---|---|---|---|---|---|
| remainingEligibilityTime | remaining eligibility time | remainingEligibilityTimeChanged | vector | s | linear |
Source code
// // A packet gate that operates based on the ~EligibilityTimeTag // attached to the next packet waiting to be pulled through. The gate is closed // if the eligibility time is greater than the current simulation time, otherwise, it is // open. // // This module is part of the asynchronous shaper architecture. // // @see ~EligibilityTimeQueue, ~EligibilityTimeFilter, ~EligibilityTimeMeter, ~EligibilityTimeTag // simple EligibilityTimeGate extends PacketGateBase like IPacketGate { parameters: string clockModule = default(""); // Relative path of the module that implements IClock; optional displayStringTextFormat = default("eligible in {remainingEligibilityTime}\npassed %p pk (%l)"); @signal[remainingEligibilityTimeChanged](type=simtime_t); @statistic[remainingEligibilityTime](title="remaining eligibility time"; source=remainingEligibilityTimeChanged; record=vector; unit=s; interpolationmode=linear); @class(EligibilityTimeGate); }File: src/inet/protocolelement/shaper/EligibilityTimeGate.ned