Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
Randomize.h
Go to the documentation of this file.
1// -*- C++ -*-
2//
3// -----------------------------------------------------------------------
4// HEP Random
5// -----------------------------------------------------------------------
6// This file is part of Geant4 (simulation toolkit for HEP).
7//
8// This file must be included to make use of the HEP Random module
9// On some compilers the static instance of the HepRandom generator
10// needs to be created explicitly in the client code. The static
11// generator is assured to be correctly initialized by including this
12// header in the client code.
13
14// =======================================================================
15// Gabriele Cosmo - Created: 5th September 1995
16// Gabriele Cosmo - Last change: 13th February 1996
17// Ken Smith - Added Ranshi and DualRand engines: 4th June 1998
18// - Added Ranlux64 and MTwist engines: 14th July 1998
19// - Added Hurd160, Hurd288m and TripleRand 6th Aug 1998
20// =======================================================================
21
22#ifndef Rndmze_h
23#define Rndmze_h 1
24
25// Including Engines ...
26
36
37// Including distributions ...
38
54
55namespace 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__
63static const int HepRandomGenActive __attribute__((unused)) = HepRandom::createInstance();
64#else
65static const int HepRandomGenActive = HepRandom::createInstance();
66#endif
67
68} // namespace CLHEP
69
70#endif
static int createInstance()
Definition Random.cc:311