RTP Trace System
1.0
|
00001 // ########################################################################## 00002 // #### #### 00003 // #### RTP Audio Server Project #### 00004 // #### ============================ #### 00005 // #### #### 00006 // #### Randomizer #### 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 RANDOM_H 00019 #define RANDOM_H 00020 00021 00022 #include "system.h" 00023 00024 00025 namespace Coral { 00026 00027 00037 class Randomizer 00038 { 00039 // ====== Constructor ==================================================== 00040 public: 00045 Randomizer(); 00046 00047 // ====== Random functions =============================================== 00051 void setSeed(); 00052 00058 void setSeed(const cardinal seed); 00059 00065 inline card8 random8(); 00066 00072 inline card16 random16(); 00073 00079 inline card32 random32(); 00080 00086 inline card64 random64(); 00087 00093 inline double random(); 00094 00100 cardinal random(const cardinal a, const cardinal b); 00101 00107 double random(const double a, const double b); 00108 00109 00110 // ====== Private data =================================================== 00111 private: 00112 card32 Value; 00113 }; 00114 00115 00116 } 00117 00118 00119 #include "randomizer.icc" 00120 00121 00122 #endif