reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
resip::FifoStatsInterface Class Referenceabstract

Interface for providing metrics on FIFOs, primarily used by CongestionManager. More...

#include <AbstractFifo.hxx>

Inheritance diagram for resip::FifoStatsInterface:
[legend]

Public Member Functions

 FifoStatsInterface ()
 
virtual ~FifoStatsInterface ()
 
virtual time_t expectedWaitTimeMilliSec () const =0
 Returns the expected time it will take to service all messages currently in the queue (in milli-seconds)
 
virtual time_t getTimeDepth () const =0
 Returns the difference in time between the youngest and oldest item in the FIFO in seconds.
 
virtual size_t getCountDepth () const =0
 Returns the number of elements in the FIFO.
 
virtual time_t averageServiceTimeMicroSec () const =0
 Returns the average time it takes for individual messages to be serviced (in micro-seconds)
 
uint8_t getRole () const
 
void setRole (uint8_t role)
 
void setDescription (const resip::Data &description)
 Sets the description for this fifo.
 
virtual const resip::Data & getDescription () const
 Gets the description for this fifo.
 

Protected Attributes

Data mDescription
 
uint8_t mRole
 

Detailed Description

Interface for providing metrics on FIFOs, primarily used by CongestionManager.

Provides four different types of metrics:

  • size : The number of elements in the queue
  • time-depth : The age of the oldest item in the queue (ie, the front)
  • expected wait-time : A heuristic estimating the amount of time a message would take to be serviced if it were added to the queue.
  • average service time : The average time it takes to service a single element from the queue (this is helpful in congestion control, but is mostly intended for logging).

Definition at line 29 of file AbstractFifo.hxx.

Constructor & Destructor Documentation

◆ FifoStatsInterface()

FifoStatsInterface::FifoStatsInterface ( )

Definition at line 6 of file AbstractFifo.cxx.

◆ ~FifoStatsInterface()

FifoStatsInterface::~FifoStatsInterface ( )
virtual

Definition at line 11 of file AbstractFifo.cxx.

Member Function Documentation

◆ averageServiceTimeMicroSec()

◆ expectedWaitTimeMilliSec()

◆ getCountDepth()

◆ getDescription()

virtual const resip::Data & resip::FifoStatsInterface::getDescription ( ) const
inlinevirtual

Gets the description for this fifo.

See also
setDescription()

Definition at line 93 of file AbstractFifo.hxx.

◆ getRole()

uint8_t resip::FifoStatsInterface::getRole ( ) const
inline

Definition at line 69 of file AbstractFifo.hxx.

◆ getTimeDepth()

◆ setDescription()

void resip::FifoStatsInterface::setDescription ( const resip::Data &  description)
inline

Sets the description for this fifo.

This is used in the logging for this fifo's statistics, and can also be used by the CongestionManager to assign a role-number.

Parameters
descriptionThe description for this fifo.

Definition at line 84 of file AbstractFifo.hxx.

◆ setRole()

void resip::FifoStatsInterface::setRole ( uint8_t  role)
inline

Definition at line 76 of file AbstractFifo.hxx.

Member Data Documentation

◆ mDescription

Data resip::FifoStatsInterface::mDescription
protected

Definition at line 96 of file AbstractFifo.hxx.

◆ mRole

uint8_t resip::FifoStatsInterface::mRole
protected

Definition at line 97 of file AbstractFifo.hxx.


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