Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:03:53

0001 #ifndef DataFormats_Common_RandomNumberGeneratorState_h
0002 #define DataFormats_Common_RandomNumberGeneratorState_h
0003 
0004 /*----------------------------------------------------------------------
0005   
0006 RandomNumberGeneratorState is used to communicate with an external process
0007 ----------------------------------------------------------------------*/
0008 
0009 #include <vector>
0010 namespace edm {
0011   struct RandomNumberGeneratorState {
0012     RandomNumberGeneratorState() = default;
0013     RandomNumberGeneratorState(std::vector<unsigned long> iState, long iSeed)
0014         : state_(std::move(iState)), seed_{iSeed} {}
0015 
0016     RandomNumberGeneratorState(RandomNumberGeneratorState const&) = default;
0017     RandomNumberGeneratorState(RandomNumberGeneratorState&&) = default;
0018 
0019     RandomNumberGeneratorState& operator=(RandomNumberGeneratorState const&) = default;
0020     RandomNumberGeneratorState& operator=(RandomNumberGeneratorState&&) = default;
0021 
0022     std::vector<unsigned long> state_;
0023     long seed_;
0024   };
0025 }  // namespace edm
0026 #endif