Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Randomize.h
Go to the documentation of this file.
1 // $Id:$
2 // -*- C++ -*-
3 //
4 // -----------------------------------------------------------------------
5 // HEP Random
6 // -----------------------------------------------------------------------
7 // This file is part of Geant4 (simulation toolkit for HEP).
8 //
9 // This file must be included to make use of the HEP Random module
10 // On some compilers the static instance of the HepRandom generator
11 // needs to be created explicitly in the client code. The static
12 // generator is assured to be correctly initialized by including this
13 // header in the client code.
14 
15 // =======================================================================
16 // Gabriele Cosmo - Created: 5th September 1995
17 // Gabriele Cosmo - Last change: 13th February 1996
18 // Ken Smith - Added Ranshi and DualRand engines: 4th June 1998
19 // - Added Ranlux64 and MTwist engines: 14th July 1998
20 // - Added Hurd160, Hurd288m and TripleRand 6th Aug 1998
21 // =======================================================================
22 
23 #ifndef Rndmze_h
24 #define Rndmze_h 1
25 
26 // Including Engines ...
27 
28 #include "CLHEP/Random/DualRand.h"
30 #include "CLHEP/Random/MixMaxRng.h"
36 
37 // Including distributions ...
38 
44 #include "CLHEP/Random/RandFlat.h"
45 #include "CLHEP/Random/RandBit.h"
46 #include "CLHEP/Random/RandGamma.h"
47 #include "CLHEP/Random/RandGauss.h"
54 
55 namespace CLHEP {
56 
57 #define HepUniformRand() HepRandom::getTheEngine()->flat()
58 
59 // On some compilers the static instance of the HepRandom generator
60 // needs to be created explicitly in the client code (i.e. here).
61 
62 #if __GNUC__
63 static const int HepRandomGenActive __attribute__((unused)) = HepRandom::createInstance();
64 #else
66 #endif
67 
68 } // namespace CLHEP
69 
70 #endif
static const int HepRandomGenActive
Definition: Randomize.h:65
static int createInstance()
Definition: Random.cc:308