INET Framework for OMNeT++/OMNEST
inet::queueing::IPacketMeter Class Referenceabstract

This class defines the interface for packet meters. More...

#include <IPacketMeter.h>

Inheritance diagram for inet::queueing::IPacketMeter:
inet::queueing::IPacketFlow inet::queueing::IPacketSink inet::queueing::IPacketSource inet::queueing::IPassivePacketSink inet::queueing::IActivePacketSink inet::queueing::IPassivePacketSource inet::queueing::IActivePacketSource inet::queueing::PacketMeterBase inet::queueing::ExponentialRateMeter inet::queueing::SlidingWindowRateMeter inet::queueing::MultiTokenBucketMixin< PacketMeterBase > inet::queueing::TokenBucketMixin< PacketMeterBase > inet::queueing::TokenBucketMeterMixin< MultiTokenBucketMixin< PacketMeterBase > > inet::queueing::TokenBucketMeterMixin< TokenBucketMixin< PacketMeterBase > > inet::queueing::MultiTokenBucketMeter inet::queueing::TokenBucketMeter

Public Member Functions

virtual void meterPacket (Packet *packet)=0
 Meters the packet and attaches the result. More...
 
- Public Member Functions inherited from inet::queueing::IPassivePacketSink
virtual ~IPassivePacketSink ()
 
virtual bool canPushSomePacket (cGate *gate) const =0
 Returns false if the packet sink is full at the given gate and no more packets can be pushed into it without raising an error. More...
 
virtual bool canPushPacket (Packet *packet, cGate *gate) const =0
 Returns true if the given packet can be pushed at the given gate into the packet sink without raising an error. More...
 
virtual void pushPacket (Packet *packet, cGate *gate)=0
 Pushes the packet into the packet sink at the given gate. More...
 
virtual void pushPacketStart (Packet *packet, cGate *gate, bps datarate)=0
 Starts pushing the packet into the packet sink at the given gate. More...
 
virtual void pushPacketEnd (Packet *packet, cGate *gate)=0
 Ends pushing the packet into the packet sink at the given gate. More...
 
virtual void pushPacketProgress (Packet *packet, cGate *gate, bps datarate, b position, b extraProcessableLength=b(0))=0
 Progresses pushing the packet into the packet sink at the given gate. More...
 
- Public Member Functions inherited from inet::queueing::IActivePacketSink
virtual ~IActivePacketSink ()
 
virtual IPassivePacketSourcegetProvider (cGate *gate)=0
 Returns the passive packet source from where packets are pulled or nullptr if the connected module doesn't implement the interface. More...
 
virtual void handleCanPullPacketChanged (cGate *gate)=0
 Notifies about a change in the possibility of pulling some packet from the passive packet source at the given gate. More...
 
virtual void handlePullPacketProcessed (Packet *packet, cGate *gate, bool successful)=0
 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::IPassivePacketSource
virtual ~IPassivePacketSource ()
 
virtual bool canPullSomePacket (cGate *gate) const =0
 Returns false if the packet source is empty at the given gate and no more packets can be pulled from it without raising an error. More...
 
virtual PacketcanPullPacket (cGate *gate) const =0
 Returns the packet that can be pulled at the given gate. More...
 
virtual PacketpullPacket (cGate *gate)=0
 Pulls the packet from the packet source at the given gate. More...
 
virtual PacketpullPacketStart (cGate *gate, bps datarate)=0
 Starts pulling the packet from the packet source at the given gate. More...
 
virtual PacketpullPacketEnd (cGate *gate)=0
 Ends pulling the packet from the packet source at the given gate. More...
 
virtual PacketpullPacketProgress (cGate *gate, bps datarate, b position, b extraProcessableLength)=0
 Progresses pulling the packet from the packet source at the given gate. More...
 
- Public Member Functions inherited from inet::queueing::IActivePacketSource
virtual ~IActivePacketSource ()
 
virtual IPassivePacketSinkgetConsumer (cGate *gate)=0
 Returns the passive packet sink where packets are pushed or nullptr if the connected module doesn't implement the interface. More...
 
virtual void handleCanPushPacketChanged (cGate *gate)=0
 Notifies about a change in the possibility of pushing some packet into the passive packet sink at the given gate. More...
 
virtual void handlePushPacketProcessed (Packet *packet, cGate *gate, bool successful)=0
 Notifies about the completion of the packet processing for a packet that was pushed earlier independently whether the packet is passed or streamed. More...
 

Detailed Description

This class defines the interface for packet meters.

Member Function Documentation

◆ meterPacket()

virtual void inet::queueing::IPacketMeter::meterPacket ( Packet packet)
pure virtual

The documentation for this class was generated from the following file: