RTP Trace System  1.0
tools.h
Go to the documentation of this file.
00001 // ##########################################################################
00002 // ####                                                                  ####
00003 // ####                      RTP Audio Server Project                    ####
00004 // ####                    ============================                  ####
00005 // ####                                                                  ####
00006 // #### Tools                                                            ####
00007 // ####                                                                  ####
00008 // #### Version 1.00  --  February 16, 2001                              ####
00009 // ####                                                                  ####
00010 // #### Copyright (C) 1999  Thomas Dreibholz                             ####
00011 // ####               2000  Universität Bonn, Abt. IV                    ####
00012 // ####               2001  EMail: dreibh@iem.uni-due.de                 ####
00013 // ####                     WWW:   https://www.uni-due.de/~be0001        ####
00014 // ####                                                                  ####
00015 // ##########################################################################
00016 
00017 
00018 #ifndef TOOLS_H
00019 #define TOOLS_H
00020 
00021 
00022 #include "system.h"
00023 #include "strings.h"
00024 
00025 
00026 namespace Coral {
00027 
00028 
00034 inline void debug(const char* string);
00035 
00036 
00042 card64 getMicroTime();
00043 
00044 
00051 inline card16 translate16(const card16 x);
00052 
00059 inline card32 translate32(const card32 x);
00060 
00067 inline card64 translate64(const card64 x);
00068 
00075 inline card64 translateToBinary(const double x);
00076 
00083 inline double translateToDouble(const card64 x);
00084 
00085 
00097 cardinal calculatePacketsPerSecond(const cardinal payloadBytesPerSecond,
00098                                    const cardinal framesPerSecond,
00099                                    const cardinal maxPacketSize,
00100                                    const cardinal headerLength);
00101 
00113 cardinal calculateBytesPerSecond(const cardinal payloadBytesPerSecond,
00114                                  const cardinal framesPerSecond,
00115                                  const cardinal maxPacketSize,
00116                                  const cardinal headerLength);
00117 
00128 bool scanURL(const String& location,
00129              String&       protocol,
00130              String&       host,
00131              String&       path);
00132 
00133 
00141 template<class T> void quickSort(T*            array,
00142                                  const integer start,
00143                                  const integer end);
00144 
00145 
00152 template<class T> cardinal removeDuplicates(T*             array,
00153                                             const cardinal length);
00154 
00155 
00161 void printTimeStamp(ostream& os = cout);
00162 
00163 
00164 }
00165 
00166 
00167 #ifdef USE_EFENCE
00168 
00169 
00173 void* operator new(size_t size) throw (std::bad_alloc);
00174 
00175 
00179 void operator delete(void* ptr) throw ();
00180 
00181 
00182 #endif
00183 
00184 
00185 #include "tools.icc"
00186 
00187 
00188 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines