Garfield++ 3.0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
Loading...
Searching...
No Matches
RandomEngine.hh
Go to the documentation of this file.
1#ifndef G_RANDOM_ENGINE_H
2#define G_RANDOM_ENGINE_H
3
4namespace Garfield {
5
6/// Abstract base class for random number generators.
7
9 public:
10 /// Constructor
11 RandomEngine() = default;
12 /// Destructor
13 virtual ~RandomEngine() {}
14
15 /// Draw a random number.
16 virtual double Draw() = 0;
17 /// Initialise the random number generator.
18 virtual void Seed(const unsigned int s) = 0;
19 /// Print some information about the random number generator.
20 virtual void Print() = 0;
21};
22}
23
24#endif
Abstract base class for random number generators.
Definition: RandomEngine.hh:8
virtual void Seed(const unsigned int s)=0
Initialise the random number generator.
virtual double Draw()=0
Draw a random number.
RandomEngine()=default
Constructor.
virtual void Print()=0
Print some information about the random number generator.
virtual ~RandomEngine()
Destructor.
Definition: RandomEngine.hh:13