Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHEvtGenRandomEngine.hh
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHEvtGenRandomEngine.hh
1 /***********************************************************************
2  * Copyright 1998-2020 CERN for the benefit of the EvtGen authors *
3  * *
4  * This file is part of EvtGen. *
5  * *
6  * EvtGen is free software: you can redistribute it and/or modify *
7  * it under the terms of the GNU General Public License as published by *
8  * the Free Software Foundation, either version 3 of the License, or *
9  * (at your option) any later version. *
10  * *
11  * EvtGen is distributed in the hope that it will be useful, *
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14  * GNU General Public License for more details. *
15  * *
16  * You should have received a copy of the GNU General Public License *
17  * along with EvtGen. If not, see <https://www.gnu.org/licenses/>. *
18  ***********************************************************************/
19 
20 #ifndef PHEvtGenRandomEngine_HH
21 #define PHEvtGenRandomEngine_HH
22 
23 #include <EvtGenBase/EvtRandomEngine.hh>
24 
25 #include <gsl/gsl_rng.h>
26 
27 class PHEvtGenRandomEngine : public EvtRandomEngine
28 {
29  public:
31  virtual ~PHEvtGenRandomEngine();
32  virtual double random();
33 
34  protected:
35  gsl_rng *RandomGenerator() const { return m_RandomGenerator; }
36 
37  private:
38  unsigned int m_Seed = 0;
39  gsl_rng *m_RandomGenerator = nullptr;
40 };
41 
42 #endif