CMS 3D CMS Logo

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