| The Gaudi Framework v27r1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

HepRndmEngine.h
Go to the documentation of this file.
1 //====================================================================
2 // CLHEP Random Engine definition file
3 //--------------------------------------------------------------------
4 //
5 // Package : HepRndm ( The LHCb Offline System)
6 // Author : M.Frank
7 // History :
8 // +---------+----------------------------------------------+---------
9 // | Date | Comment | Who
10 // +---------+----------------------------------------------+---------
11 // | 29/10/99| Initial version | MF
12 // +---------+----------------------------------------------+---------
13 //
14 //====================================================================
15 #ifndef HEPRNDM_HEPRNDMENGINE_H
16 #define HEPRNDM_HEPRNDMENGINE_H 1
17
18 // Framework include files
19 #include <vector>
20 #include "HepRndmBaseEngine.h"
21
22 namespace HepRndm {
23
24 template <class TYPE>
25 class Engine : public BaseEngine {
26 protected:
27 // Seed table
28 mutable std::vector<long> m_seeds;
29 // Other parameters
30 int m_row, m_col, m_lux;
31 bool m_useTable, m_setSingleton;
32 public:
34 Engine(const std::string& name, ISvcLocator* loc);
36 ~Engine() override = default;
38 StatusCode initialize() override;
40 StatusCode finalize() override;
42 StatusCode setSeeds(const std::vector<long>& seed) override;
44 StatusCode seeds(std::vector<long>& seed) const override;
45 private:
47 std::unique_ptr<CLHEP::HepRandomEngine> createEngine() override;
48 };
49 }
50
51 #endif // HEPRNDM_HEPRNDMENGINE_H
ISvcLocator
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
Definition: ISvcLocator.h:25
HepRndm::Engine::seeds
StatusCode seeds(std::vector< long > &seed) const override
Retrieve seeds.
Definition: HepRndmEngines.cpp:129
HepRndm::Engine::~Engine
~Engine() override=default
Standard Destructor.
HepRndm::Engine::m_seeds
std::vector< long > m_seeds
Definition: HepRndmEngine.h:28
HepRndm::Engine::Engine
Engine(const std::string &name, ISvcLocator *loc)
Standard Constructor.
Definition: HepRndmEngines.cpp:56
HepRndm::Engine::m_useTable
bool m_useTable
Definition: HepRndmEngine.h:31
HepRndm::Engine::m_setSingleton
bool m_setSingleton
Definition: HepRndmEngine.h:31
std::string
STL class.
HepRndmBaseEngine.h
HepRndm::Engine
Definition: HepRndmEngine.h:25
Service::name
const std::string & name() const override
Retrieve name of the service.
Definition: Service.cpp:319
HepRndm::Engine::finalize
StatusCode finalize() override
Finalize the Engine.
Definition: HepRndmEngines.cpp:109
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
HepRndm::Engine::createEngine
std::unique_ptr< CLHEP::HepRandomEngine > createEngine() override
Create new HepEngine....
HepRndm
Definition: HepRndmBaseEngine.h:27
std::vector< long >
std::unique_ptr< CLHEP::HepRandomEngine >
HepRndm::Engine::setSeeds
StatusCode setSeeds(const std::vector< long > &seed) override
Set seeds.
Definition: HepRndmEngines.cpp:115
HepRndm::Engine::m_row
int m_row
Definition: HepRndmEngine.h:30
HepRndm::BaseEngine
Definition: HepRndmBaseEngine.h:29
HepRndm::Engine::initialize
StatusCode initialize() override
Initialize the Engine.
Definition: HepRndmEngines.cpp:67
HepRndm::Engine::m_col
int m_col
Definition: HepRndmEngine.h:30
HepRndm::Engine::m_lux
int m_lux
Definition: HepRndmEngine.h:30