CMS 3D CMS Logo

RPCSimAsymmetricCls.h
Go to the documentation of this file.
1 #ifndef RPCDigitizer_RPCSimAsymmetricCls_h
2 #define RPCDigitizer_RPCSimAsymmetricCls_h
3 
12 
13 #include <cstring>
14 #include <iostream>
15 #include <fstream>
16 #include <string>
17 #include <vector>
18 #include <cstdlib>
22 
23 class RPCGeometry;
24 //class RPCSimSetUp;
25 
26 namespace CLHEP {
27  class HepRandomEngine;
28 }
29 
30 class RPCSimAsymmetricCls : public RPCSim {
31 public:
33  ~RPCSimAsymmetricCls() override;
34 
35  void simulate(const RPCRoll* roll, const edm::PSimHitContainer& rpcHits, CLHEP::HepRandomEngine*) override;
36 
37  void simulateNoise(const RPCRoll*, CLHEP::HepRandomEngine*) override;
38 
39  int getClSize(float posX, CLHEP::HepRandomEngine*);
40  int getClSize(uint32_t id, float posX, CLHEP::HepRandomEngine*);
41  unsigned int slice(float posX); //??? CLHEP::HepRandomEngine*);
42 
43 private:
44  void init() override{};
45 
46 private:
47  double aveEff;
48  double aveCls;
49  double resRPC;
50  double timOff;
51  double dtimCs;
52  double resEle;
53  double sspeed;
54  double lbGate;
56  bool eledig;
57 
58  int N_hits;
59  int nbxing;
60  double rate;
61  double gate;
62  double frate;
63 
64  std::map<int, std::vector<double> > clsMap;
65  std::vector<double> sum_clsize;
66  std::vector<double> clsForDetId;
67  std::ifstream* infile;
68 
70 };
71 #endif
void simulateNoise(const RPCRoll *, CLHEP::HepRandomEngine *) override
Definition: config.py:1
std::vector< double > clsForDetId
std::map< int, std::vector< double > > clsMap
std::vector< double > sum_clsize
Definition: RPCSim.h:30
void simulate(const RPCRoll *roll, const edm::PSimHitContainer &rpcHits, CLHEP::HepRandomEngine *) override
std::ifstream * infile
int getClSize(float posX, CLHEP::HepRandomEngine *)
RPCSynchronizer * _rpcSync
RPCSimAsymmetricCls(const edm::ParameterSet &config)
std::vector< PSimHit > PSimHitContainer
unsigned int slice(float posX)