Package: inet.queueing.gate
InteractiveGate
simple moduleThis packet gate module allows or forbids packets to pass through depending on whether the gate is open or closed as specified by the parameter. The gate can also be controlled by the user by manually changing the open parameter from the graphical user interface while the simulation is paused.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Extends
Name | Type | Description |
---|---|---|
PacketGateBase | simple module |
This is a base module for various packet gate modules. |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
displayStringTextFormat | string | "passed %p pk (%l)" |
determines the text that is written on top of the submodule |
bitrate | double | nan bps | |
extraLength | int | 0b | |
extraDuration | double | 0s | |
open | bool | true |
Properties
Name | Value | Description |
---|---|---|
display | i=block/cogwheel | |
class | InteractiveGate |
Gates
Name | Direction | Size | Description |
---|---|---|---|
in | input | ||
out | output |
Signals
Name | Type | Unit |
---|---|---|
gateStateChanged | bool |
Statistics
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
gateState | gate state | gateStateChanged | vector | sample-hold |
Direct method calls (observed)
call to | function | info |
---|---|---|
StreamClassifier | inet::StreamClassifier::handleCanPushPacketChanged | handleCanPushPacketChanged |
EligibilityTimeMeter | inet::EligibilityTimeMeter::pushPacket | pushPacket |
InteractiveGate | inet::queueing::InteractiveGate::handleCanPushPacketChanged | handleCanPushPacketChanged |
SingleRateTwoColorMeter | inet::queueing::TokenBucketMeter::pushPacket | pushPacket |
SlidingWindowRateMeter | inet::queueing::SlidingWindowRateMeter::pushPacket | pushPacket |
Called methods (observed)
function | info | call from |
---|---|---|
inet::queueing::InteractiveGate::handleCanPushPacketChanged | handleCanPushPacketChanged | InteractiveGate, SingleRateTwoColorMeter |
inet::queueing::InteractiveGate::pushPacket | pushPacket | StreamClassifier |
Pushed in messages (observed)
gate | msg | kind | ctrl | srcModule | tags |
---|---|---|---|---|---|
in | Packet | 0 | StreamClassifier | DirectionTag, PacketProtocolTag, DispatchProtocolReq?, DropEligibleInd?, EncapsulationProtocolInd?, InterfaceInd?, MacAddressInd?, PcpInd?, StreamInd?, StreamReq?, UserPriorityInd?, VlanInd? |
Push out messages (observed)
Region Tagging operations (observed)
tagType | tagAction |
---|---|
FlowTag | mapAllTags |
Source code
// // This packet gate module allows or forbids packets to pass through depending // on whether the gate is open or closed as specified by the parameter. The gate // can also be controlled by the user by manually changing the open parameter // from the graphical user interface while the simulation is paused. // simple InteractiveGate extends PacketGateBase like IPacketGate { parameters: bool open @mutable = default(true); @class(InteractiveGate); }File: src/inet/queueing/gate/InteractiveGate.ned