]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TEvtGen/EvtGen/EvtGenBase/EvtRandom.hh
Converting TEvtGen to native cmake
[u/mrichter/AliRoot.git] / TEvtGen / EvtGen / EvtGenBase / EvtRandom.hh
1 //--------------------------------------------------------------------------
2 //
3 // Environment:
4 //      This software is part of the EvtGen package developed jointly
5 //      for the BaBar and CLEO collaborations.  If you use all or part
6 //      of it, please give an appropriate acknowledgement.
7 //
8 // Copyright Information: See EvtGen/COPYRIGHT
9 //      Copyright (C) 1998      Caltech, UCSB
10 //
11 // Module: EvtGen/EvtRandom.hh
12 //
13 // Description:Source of random numbers for EvtGen code
14 //
15 // Modification history:
16 //
17 //    RYD     March 24, 1998         Module created
18 //
19 //------------------------------------------------------------------------
20
21 #ifndef EVTRANDOM_HH
22 #define EVTRANDOM_HH
23
24
25 class EvtRandomEngine;
26
27 class EvtRandom{
28
29 public:
30
31   static double Flat();
32   static double Flat(double max);
33   static double Flat(double min, double max);
34
35   //generate unit Gaussian
36   static double Gaussian();
37
38   static double random();
39   
40   //This class does not take ownership of the random engine;
41   //the caller needs to make sure that the engine is not
42   //destroyed.
43   static void setRandomEngine(EvtRandomEngine* randomEngine);
44
45 private:
46
47   static EvtRandomEngine* _randomEngine;
48
49 };
50
51 #endif
52