|
INET Framework for OMNeT++/OMNEST
|
#include <TokenBasedServer.h>
Public Member Functions | |
| virtual double | getNumTokens () const override |
| virtual void | addTokens (double tokens) override |
| virtual void | removeTokens (double tokens) override |
| virtual void | addTokenProductionRate (double tokenRate) override |
| virtual void | removeTokenProductionRate (double tokenRate) override |
| virtual void | handleCanPushPacketChanged (cGate *gate) override |
| Notifies about a change in the possibility of pushing some packet into the passive packet sink at the given gate. More... | |
| virtual void | handleCanPullPacketChanged (cGate *gate) override |
| Notifies about a change in the possibility of pulling some packet from the passive packet source at the given gate. More... | |
| virtual const char * | resolveDirective (char directive) const override |
Public Member Functions inherited from inet::queueing::PacketServerBase | |
| virtual IPassivePacketSource * | getProvider (cGate *gate) override |
| Returns the passive packet source from where packets are pulled or nullptr if the connected module doesn't implement the interface. More... | |
| virtual IPassivePacketSink * | getConsumer (cGate *gate) override |
| Returns the passive packet sink where packets are pushed or nullptr if the connected module doesn't implement the interface. More... | |
| virtual bool | supportsPacketPushing (cGate *gate) const override |
| Returns true if the processor supports pushing packets at the given gate. More... | |
| virtual bool | supportsPacketPulling (cGate *gate) const override |
| Returns true if the processor supports pulling packets at the given gate. More... | |
| virtual void | handlePushPacketProcessed (Packet *packet, cGate *gate, bool successful) override |
| Notifies about the completion of the packet processing for a packet that was pushed earlier independently whether the packet is passed or streamed. More... | |
| virtual void | handlePullPacketProcessed (Packet *packet, cGate *gate, bool successful) override |
| Notifies about the completion of the packet processing for a packet that was pulled earlier independently whether the packet is passed or streamed. More... | |
Public Member Functions inherited from inet::queueing::PacketProcessorBase | |
| virtual bool | supportsPacketSending (cGate *gate) const override |
| Returns true if the processor supports sending packets at the given gate. More... | |
| virtual bool | supportsPacketPassing (cGate *gate) const override |
| Returns true if the processor supports passing packets as a whole at the given gate. More... | |
| virtual bool | supportsPacketStreaming (cGate *gate) const override |
| Returns true if the processor supports streaming packets at the given gate. More... | |
Public Member Functions inherited from inet::queueing::IPacketProcessor | |
| virtual | ~IPacketProcessor () |
Public Member Functions inherited from inet::queueing::IActivePacketSink | |
| virtual | ~IActivePacketSink () |
Public Member Functions inherited from inet::queueing::IActivePacketSource | |
| virtual | ~IActivePacketSource () |
Public Member Functions inherited from inet::queueing::ITokenStorage | |
| virtual | ~ITokenStorage () |
Protected Member Functions | |
| virtual void | initialize (int stage) override |
| virtual void | processPackets () |
Protected Member Functions inherited from inet::queueing::PacketProcessorBase | |
| virtual int | numInitStages () const override |
| virtual void | refreshDisplay () const override |
| virtual void | handlePacketProcessed (Packet *packet) |
| virtual void | checkPacketOperationSupport (cGate *gate) const |
| virtual void | checkPacketOperationSupport (cGate *startGate, cGate *endGate) const |
| virtual void | animate (Packet *packet, cGate *gate, const SendOptions &sendOptions, Action action) const |
| virtual void | animatePacket (Packet *packet, cGate *gate, Action action) const |
| virtual void | animatePacketStart (Packet *packet, cGate *gate, bps datarate, long transmissionId, Action action) const |
| virtual void | animatePacketStart (Packet *packet, cGate *gate, bps datarate, const SendOptions &sendOptions, Action action) const |
| virtual void | animatePacketEnd (Packet *packet, cGate *gate, long transmissionId, Action action) const |
| virtual void | animatePacketEnd (Packet *packet, cGate *gate, const SendOptions &sendOptions, Action action) const |
| virtual void | animatePacketProgress (Packet *packet, cGate *gate, bps datarate, b position, b extraProcessableLength, long transmissionId, Action action) const |
| virtual void | animatePacketProgress (Packet *packet, cGate *gate, bps datarate, b position, b extraProcessableLength, const SendOptions &sendOptions, Action action) const |
| virtual void | pushOrSendPacket (Packet *packet, cGate *gate, IPassivePacketSink *consumer) |
| virtual void | pushOrSendPacketStart (Packet *packet, cGate *gate, IPassivePacketSink *consumer, bps datarate, int transmissionId) |
| virtual void | pushOrSendPacketEnd (Packet *packet, cGate *gate, IPassivePacketSink *consumer, int transmissionId) |
| virtual void | pushOrSendPacketProgress (Packet *packet, cGate *gate, IPassivePacketSink *consumer, bps datarate, b position, b extraProcessableLength, int transmissionId) |
| virtual void | animatePush (Packet *packet, cGate *gate, const SendOptions &sendOptions) const |
| virtual void | animatePushPacket (Packet *packet, cGate *gate) const |
| virtual void | animatePushPacketStart (Packet *packet, cGate *gate, bps datarate, long transmissionId) const |
| virtual void | animatePushPacketStart (Packet *packet, cGate *gate, bps datarate, const SendOptions &sendOptions) const |
| virtual void | animatePushPacketEnd (Packet *packet, cGate *gate, long transmissionId) const |
| virtual void | animatePushPacketEnd (Packet *packet, cGate *gate, const SendOptions &sendOptions) const |
| virtual void | animatePushPacketProgress (Packet *packet, cGate *gate, bps datarate, b position, b extraProcessableLength, long transmissionId) const |
| virtual void | animatePushPacketProgress (Packet *packet, cGate *gate, bps datarate, b position, b extraProcessableLength, const SendOptions &sendOptions) const |
| virtual void | animatePull (Packet *packet, cGate *gate, const SendOptions &sendOptions) const |
| virtual void | animatePullPacket (Packet *packet, cGate *gate) const |
| virtual void | animatePullPacketStart (Packet *packet, cGate *gate, bps datarate, long transmissionId) const |
| virtual void | animatePullPacketStart (Packet *packet, cGate *gate, bps datarate, const SendOptions &sendOptions) const |
| virtual void | animatePullPacketEnd (Packet *packet, cGate *gate, long transmissionId) const |
| virtual void | animatePullPacketEnd (Packet *packet, cGate *gate, const SendOptions &sendOptions) const |
| virtual void | animatePullPacketProgress (Packet *packet, cGate *gate, bps datarate, b position, b extraProcessableLength, long transmissionId) const |
| virtual void | animatePullPacketProgress (Packet *packet, cGate *gate, bps datarate, b position, b extraProcessableLength, const SendOptions &sendOptions) const |
| virtual void | dropPacket (Packet *packet, PacketDropReason reason, int limit=-1) |
| virtual void | updateDisplayString () const |
Protected Attributes | |
| cPar * | tokenConsumptionPerPacketParameter = nullptr |
| cPar * | tokenConsumptionPerBitParameter = nullptr |
| double | maxNumTokens = NaN |
| bool | tokensDepletedSignaled = true |
| double | numTokens = 0 |
Protected Attributes inherited from inet::queueing::PacketServerBase | |
| cGate * | inputGate = nullptr |
| IPassivePacketSource * | provider = nullptr |
| cGate * | outputGate = nullptr |
| IPassivePacketSink * | consumer = nullptr |
Protected Attributes inherited from inet::queueing::PacketProcessorBase | |
| const char * | displayStringTextFormat = nullptr |
| int | numProcessedPackets = -1 |
| b | processedTotalLength = b(-1) |
Additional Inherited Members | |
Protected Types inherited from inet::queueing::PacketProcessorBase | |
| enum | Action { PUSH, PULL } |
|
inlineoverridevirtual |
Implements inet::queueing::ITokenStorage.
|
overridevirtual |
Implements inet::queueing::ITokenStorage.
|
inlineoverridevirtual |
Implements inet::queueing::ITokenStorage.
|
overridevirtual |
Notifies about a change in the possibility of pulling some packet from the passive packet source at the given gate.
This method is called, for example, when a new packet is inserted into a queue. It allows the sink to pull a new packet from the queue.
The gate parameter must be a valid gate of this module.
Implements inet::queueing::IActivePacketSink.
|
overridevirtual |
Notifies about a change in the possibility of pushing some packet into the passive packet sink at the given gate.
This method is called, for example, when a new packet can be inserted into a queue. It allows the source to push a new packet into the queue.
The gate parameter must be a valid gate of this module.
Implements inet::queueing::IActivePacketSource.
|
overrideprotectedvirtual |
Reimplemented from inet::queueing::PacketServerBase.
|
protectedvirtual |
Referenced by addTokens(), and handleCanPullPacketChanged().
|
inlineoverridevirtual |
Implements inet::queueing::ITokenStorage.
|
inlineoverridevirtual |
Implements inet::queueing::ITokenStorage.
|
overridevirtual |
Reimplemented from inet::queueing::PacketProcessorBase.
|
protected |
Referenced by addTokens(), and initialize().
|
protected |
Referenced by addTokens(), initialize(), processPackets(), and resolveDirective().
|
protected |
Referenced by initialize(), and processPackets().
|
protected |
Referenced by initialize(), and processPackets().
|
protected |
Referenced by addTokens(), and processPackets().