Package: inet.queueing.server
PreemptingServer
simple module(no description)
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Used in compound modules
Name | Type | Description |
---|---|---|
EthernetPreemptingMacLayer | compound module | (no description) |
Extends
Name | Type | Description |
---|---|---|
PacketServerBase | simple module |
This is a base module for various packet server modules. |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
displayStringTextFormat | string | "served %p pk (%l)" |
determines the text that is written on top of the submodule |
clockModule | string | "" |
relative path of a module that implements IClock; optional |
datarate | double |
Properties
Name | Value | Description |
---|---|---|
display | i=block/server | |
class | PreemptingServer |
Gates
Name | Direction | Size | Description |
---|---|---|---|
in | input | ||
out | output |
Signals
Name | Type | Unit |
---|---|---|
packetPushed | inet::Packet | |
packetPulled | inet::Packet |
Statistics
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
outgoingDataRate | outgoing datarate | throughput(packetPushed) | vector | bps | linear |
incomingDataRate | incoming datarate | throughput(packetPulled) | vector | bps | linear |
outgoingPacketLengths | outgoing packet lengths | packetLength(packetPushed) | sum, histogram, vector | b | none |
incomingPacketLengths | incoming packet lengths | packetLength(packetPulled) | sum, histogram, vector | b | none |
incomingPackets | incoming packets | packetPulled | count | pk | |
outgoingPackets | outgoing packets | packetPushed | count | pk |
Scheduled messages (observed)
msg | kind | ctrl | tags | msgname | context |
---|---|---|---|---|---|
ClockEvent | 0 | Timer |
Direct method calls (observed)
call to | function | info |
---|---|---|
EthernetFcsChecker | inet::EthernetFcsChecker::canPullSomePacket | canPullSomePacket |
PacketClassifier | inet::queueing::PacketClassifier::pushPacketEnd | pushPacketEnd |
PacketClassifier | inet::queueing::PacketClassifier::pushPacketStart | pushPacketStart |
PriorityScheduler | inet::queueing::PriorityScheduler::pullPacketEnd | pullPacketEnd |
PriorityScheduler | inet::queueing::PriorityScheduler::pullPacketStart | pullPacketStart |
Called methods (observed)
function | info | call from |
---|---|---|
inet::queueing::PreemptingServer::handleCanPullPacketChanged | handleCanPullPacketChanged | PriorityScheduler |
inet::queueing::PreemptingServer::handleCanPushPacketChanged | handleCanPushPacketChanged | PacketClassifier |
Pull in messages (observed)
gate | msg | kind | ctrl | srcModule | tags |
---|---|---|---|---|---|
in | Packet | 0 | PriorityScheduler | DirectionTag, DispatchProtocolInd, EncapsulationProtocolReq, InterfaceReq, MacAddressReq, MulticastReq, NetworkProtocolInd, TransportProtocolInd, VlanReq, FragmentTag?, PacketProtocolTag? |
Push out messages (observed)
gate | msg | kind | ctrl | destModule | tags |
---|---|---|---|---|---|
out | Packet | 0 | PacketClassifier | DirectionTag, DispatchProtocolInd, EncapsulationProtocolReq, InterfaceReq, MacAddressReq, MulticastReq, NetworkProtocolInd, TransportProtocolInd, VlanReq, FragmentTag?, PacketProtocolTag? |
Source code
simple PreemptingServer extends PacketServerBase like IPacketServer { parameters: string clockModule = default(""); // relative path of a module that implements IClock; optional double datarate @unit(bps); @class(PreemptingServer); }File: src/inet/queueing/server/PreemptingServer.ned