CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/SimDataFormats/RandomEngine/interface/RandomEngineStates.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef RandomEngine_RandomEngineStates_h
00003 #define RandomEngine_RandomEngineStates_h
00004 
00016 #include <vector>
00017 #include <string>
00018 
00019 class RandomEngineState;
00020 
00021 namespace edm {
00022 
00023   class RandomEngineStates {
00024   public:
00025 
00026     RandomEngineStates();
00027     ~RandomEngineStates();
00028 
00029     void getRandomEngineStates(std::vector<RandomEngineState> & states) const;
00030     void setRandomEngineStates(std::vector<RandomEngineState> const& states);
00031 
00032     bool isProductEqual(RandomEngineStates const& randomEngineStates) const;
00033 
00034   private:
00035 
00036     std::vector<std::string> moduleLabels_;
00037 
00038     std::vector<unsigned> seedLengths_;
00039     std::vector<unsigned> seedVectors_;
00040 
00041     std::vector<unsigned> stateLengths_;
00042     std::vector<unsigned> stateVectors_;
00043   };
00044 }
00045 #endif