Source: congestionmonitorreport.h


Annotated List
Files
Globals
Hierarchy
Index
// ##########################################################################
// ####                                                                  ####
// ####                      RTP Audio Server Project                    ####
// ####                    ============================                  ####
// ####                                                                  ####
// #### Congestion Monitor Report                                        ####
// ####                                                                  ####
// #### Version 1.00  --  February 23, 2001                              ####
// ####                                                                  ####
// #### Copyright (C) 1999  Thomas Dreibholz                             ####
// ####               2000  Universität Bonn, Abt. IV                    ####
// ####               2001  EMail: Dreibholz@bigfoot.com                 ####
// ####                     WWW:   http://www.bigfoot.com/~dreibholz     ####
// ####                                                                  ####
// ##########################################################################


#ifndef CONGESTIONMONITORREPORT_H
#define CONGESTIONMONITORREPORT_H


#include "system.h"
#include "networkmonitorreport.h"


namespace Coral {


/**
  * This is a congestion monitor report, which can be read from the CongestionMonitor.
  *
  * @short   Congestion Monitor Report
  * @author  Thomas Dreibholz (Dreibholz@bigfoot.com)
  * @version 1.0
  */
class CongestionMonitorReport : public NetworkMonitorReport
{
   // ====== Constructor ====================================================
   public:
   /**
     * Constructor.
     */
   CongestionMonitorReport();


   // ====== Byte order translation =========================================
   /**
     * Translate byte order.
     */
   void translate();


   // ====== Status functions ===============================================
   /**
     * Reset report.
     */
   void reset();


   // ====== Report data ====================================================
   /**
     * Sequence number for this report.
     */
   card32 SeqNum;

   /**
     * Congestion of the reported network. To get the percentage of congestion,
     * calculate (100.0 * Bandwidth) / 65536.0.
     */
   card32 Congestion;

   /**
     * Bandwidth of the reported network.
     */
   card64 Bandwidth;

   /**
     * CongestionMonitor flags.
     */
   card8 CongestionMonitorFlags;
};


#define CMF_SIMULATION (1 << 0)


/**
  * Implementation of << operator.
  */
ostream& operator<<(ostream& os, const CongestionMonitorReport& report);


}

    
#endif
    

Generated by: viper@odin on Fri Feb 23 12:41:26 2001, using kdoc 2.0a36.