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