|
24 | 24 | #include <SimulationDataFormat/PrimaryChunk.h> |
25 | 25 | #include <Generators/GeneratorFromFile.h> |
26 | 26 | #include <SimConfig/SimConfig.h> |
| 27 | +#include <CommonUtils/RngHelper.h> |
27 | 28 | #include <typeinfo> |
28 | 29 | #include <thread> |
29 | 30 | #include <TROOT.h> |
30 | | -#include <fcntl.h> |
31 | 31 |
|
32 | 32 | namespace o2 |
33 | 33 | { |
@@ -76,12 +76,8 @@ class O2PrimaryServerDevice : public FairMQDevice |
76 | 76 |
|
77 | 77 | // initial initial seed --> we should store this somewhere |
78 | 78 | mInitialSeed = vm["seed"].as<int>(); |
79 | | - if (mInitialSeed == -1) { |
80 | | - mInitialSeed = getRandomSeed(); |
81 | | - } |
82 | | - LOG(INFO) << "INITIAL SEED " << mInitialSeed; |
83 | | - // set seed here ... in order to influence already event generation |
84 | | - gRandom->SetSeed(mInitialSeed); |
| 79 | + mInitialSeed = o2::utils::RngHelper::setGRandomSeed(mInitialSeed); |
| 80 | + LOG(INFO) << "RNG INITIAL SEED " << mInitialSeed; |
85 | 81 |
|
86 | 82 | mMaxEvents = conf.getNEvents(); |
87 | 83 |
|
@@ -211,24 +207,6 @@ class O2PrimaryServerDevice : public FairMQDevice |
211 | 207 | } |
212 | 208 |
|
213 | 209 | private: |
214 | | - // helper function to get truly random seed |
215 | | - int getRandomSeed() const |
216 | | - { |
217 | | - int randomDataHandle = open("/dev/urandom", O_RDONLY); |
218 | | - if (randomDataHandle < 0) { |
219 | | - // something went wrong |
220 | | - } else { |
221 | | - int seed; |
222 | | - auto result = read(randomDataHandle, &seed, sizeof(seed)); |
223 | | - if (result < 0) { |
224 | | - // something went wrong |
225 | | - } |
226 | | - close(randomDataHandle); |
227 | | - return seed; |
228 | | - } |
229 | | - return 0; |
230 | | - } |
231 | | - |
232 | 210 | std::string mOutChannelName = ""; |
233 | 211 | FairPrimaryGenerator mPrimGen; |
234 | 212 | FairMCEventHeader mEventHeader; |
|
0 commit comments