CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SubsystemNeutronReader.h
Go to the documentation of this file.
1 #ifndef SimMuon_Neutron_SubsystemNeutronReader_h
2 #define SimMuon_Neutron_SubsystemNeutronReader_h
3 
11 #include "CLHEP/Random/RandomEngine.h"
12 #include "CLHEP/Random/RandFlat.h"
13 #include "CLHEP/Random/RandPoissonQ.h"
14 #include<vector>
15 class NeutronReader;
16 
18 {
19 public:
24  virtual ~SubsystemNeutronReader();
25 
26  void setRandomEngine(CLHEP::HepRandomEngine & engine);
27 
30  void generateChamberNoise(int chamberType, int chamberIndex, edm::PSimHitContainer & result);
31 
32  void clear() {theChambersDone.clear();}
33 
34 protected:
37  virtual int detId(int chamberIndex, int localDetId ) = 0;
38 
39 
40 private:
41 
43 
44  CLHEP::RandFlat * theRandFlat;
45  CLHEP::RandPoissonQ * theRandPoisson;
46 
48  std::vector<int> theChambersDone;
49 
50 
53  float theStartTime;
54  float theEndTime;
57 
58  std::vector<double> theEventOccupancy; // Placed here so ctor init list order OK
59 
60 };
61 
62 #endif
63 
std::vector< double > theEventOccupancy
CLHEP::RandPoissonQ * theRandPoisson
SubsystemNeutronReader(const edm::ParameterSet &pset)
std::vector< int > theChambersDone
just makes sure chambers aren&#39;t done twice
tuple result
Definition: query.py:137
virtual int detId(int chamberIndex, int localDetId)=0
float theEventsInWindow
how many collsions happened between theStartTime and theEndTime
void setRandomEngine(CLHEP::HepRandomEngine &engine)
std::vector< PSimHit > PSimHitContainer
float theLuminosity
in units of 10**34, set by Muon:NeutronLuminosity
void generateChamberNoise(int chamberType, int chamberIndex, edm::PSimHitContainer &result)