RTP Trace System
1.0
|
00001 // ########################################################################## 00002 // #### #### 00003 // #### RTP Audio Server Project #### 00004 // #### ============================ #### 00005 // #### #### 00006 // #### Range Template #### 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 RANGE_H 00019 #define RANGE_H 00020 00021 00022 #include "system.h" 00023 00024 00034 template<class T> class Range 00035 { 00036 // ====== Constructors =================================================== 00037 public: 00041 Range(); 00042 00050 Range(const T min, const T max, const T value); 00051 00052 00053 // ====== Initialization ================================================= 00061 void init(const T min, const T max, const T value); 00062 00063 00064 // ====== Range functions ================================================ 00070 inline T getMin() const; 00071 00077 inline T getMax() const; 00078 00084 inline T getValue() const; 00085 00092 inline void setLimits(const T min, const T max); 00093 00099 inline void setValue(const T value); 00100 00101 00102 // ====== "="-operator =================================================== 00106 Range<T>& operator=(const Range<T>& range); 00107 00108 00109 // ====== Comparision operators ========================================== 00113 inline int operator==(const Range<T>& ti) const; 00114 00118 inline int operator!=(const Range<T>& ti) const; 00119 00120 00121 // ====== Private data =================================================== 00122 public: // Public because of byte order translation! 00123 T Min; 00124 T Max; 00125 T Value; 00126 }; 00127 00128 00132 template<class T> ostream& operator<<(ostream& os, const Range<T>& range); 00133 00134 00135 #include "range.icc" 00136 #include "range.cc" 00137 00138 00139 #endif