Package: inet.queueing.base
TokenGeneratorBase
simple moduleThis is a base module for various token generator modules.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Known subclasses
| Name | Type | Description | 
|---|---|---|
| PacketBasedTokenGenerator | simple module | This module generates tokens into the configured TokenBasedServer for each consumed packet. | 
| QueueBasedTokenGenerator | simple module | This module generates tokens for a TokenBasedServer based on the observed state changes of a packet queue. It's primary purpose is to allow applications to produce traffic which completely utilizes a network interface. This is achieved by generating tokens whenever the observed packet queue becomes empty. | 
| SignalBasedTokenGenerator | simple module | This module generates tokens for a TokenBasedServer based on received signals. | 
| TimeBasedTokenGenerator | simple module | This module generates tokens for a TokenBasedServer repeatedly. | 
Extends
| Name | Type | Description | 
|---|---|---|
| PacketProcessorBase | simple module | This is a base module for various packet processing modules which maintains a few statistics. | 
Parameters
| Name | Type | Default value | Description | 
|---|---|---|---|
| displayStringTextFormat | string | "generated %t tk\nto %s" | determines the text that is written on top of the submodule | 
| storageModule | string | module path of the token storage where the tokens are generated via C++ method call | 
Properties
| Name | Value | Description | 
|---|---|---|
| display | i=block/control | |
| class | TokenGeneratorBase | 
Signals
| Name | Type | Unit | 
|---|---|---|
| tokensCreated | double | 
Statistics
| Name | Title | Source | Record | Unit | Interpolation Mode | 
|---|---|---|---|---|---|
| tokensCreated | tokens created | count(tokensCreated) | count | tk | |
| numTokensCreated | number of created tokens | tokensCreated | sum, vector | tk | none | 
Source code
// // This is a base module for various token generator modules. // simple TokenGeneratorBase extends PacketProcessorBase { parameters: string storageModule; // module path of the token storage where the tokens are generated via C++ method call displayStringTextFormat = default("generated %t tk\nto %s"); // determines display string text above the submodule @class(TokenGeneratorBase); @display("i=block/control"); @signal[tokensCreated](type=double); // the statistical value is the number of times tokens were created @statistic[tokensCreated](title="tokens created"; source=count(tokensCreated); record=count; unit=tk); // the statistical value is the number of created tokens @statistic[numTokensCreated](title="number of created tokens"; source=tokensCreated; record=sum,vector; unit=tk; interpolationmode=none); }File: src/inet/queueing/base/TokenGeneratorBase.ned