Lumino.Math
D:/Proj/Lumino.Math/include/Lumino/Math/Random.h
00001 
00002 #ifndef LUMINO_MATH_RANDOM_H
00003 #define LUMINO_MATH_RANDOM_H
00004 
00005 #include "Common.h"
00006 
00007 namespace Lumino
00008 {
00009 
00014 class LUMINO_EXPORT Randomizer
00015 {
00016 public:
00017 
00021     Randomizer();
00022 
00027     Randomizer(int seed);
00028 
00029 public:
00030 
00035     void SetSeed(int seed);
00036 
00041     int GetInt();
00042 
00048     int GetInt(int maxValue);
00049 
00056     int GetIntRange(int minValue, int maxValue);
00057 
00064     int GetIntWidth(int median, int width);
00065 
00070     float GetFloat();
00071 
00077     float GetFloat(float maxValue);
00078 
00085     float GetFloatRange(float minValue, float maxValue);
00086 
00093     float GetFloatWidth(float median, float width);
00094 
00095 private:
00096     unsigned int x, y, z, w;
00097 };
00098 
00102 extern Randomizer Random;
00103 
00104 } // namespace Lumino
00105 
00106 #endif // LUMINO_MATH_RANDOM_H
 All Classes Functions Variables Friends