CMS 3D CMS Logo

GEMSignalModel.h
Go to the documentation of this file.
1 #ifndef SimMuon_GEMDigitizer_GEMSignalModel_h
2 #define SimMuon_GEMDigitizer_GEMSignalModel_h
3 
16 
17 class GEMGeometry;
18 class GEMStripTopology;
19 
20 namespace CLHEP {
21  class HepRandomEngine;
22 }
23 
24 class GEMSignalModel : public GEMDigiModel {
25 public:
27 
28  ~GEMSignalModel() override;
29 
30  void simulate(
31  const GEMEtaPartition*, const edm::PSimHitContainer&, CLHEP::HepRandomEngine*, Strips&, DetectorHitMap&) override;
32 
33  int getSimHitBx(const PSimHit*, CLHEP::HepRandomEngine*);
34 
35  std::vector<std::pair<int, int> > simulateClustering(const GEMStripTopology*,
36  const PSimHit*,
37  const int,
38  CLHEP::HepRandomEngine*);
39 
40 private:
44  double timeJitter_;
46  bool bx0filter_;
48  double resolutionX_;
49 
50  const double cspeed;
51  const double energyMinCut;
52 };
53 #endif
double averageEfficiency_
std::vector< std::pair< int, int > > simulateClustering(const GEMStripTopology *, const PSimHit *, const int, CLHEP::HepRandomEngine *)
const double cspeed
double signalPropagationSpeed_
const double energyMinCut
void simulate(const GEMEtaPartition *, const edm::PSimHitContainer &, CLHEP::HepRandomEngine *, Strips &, DetectorHitMap &) override
double timeResolution_
int getSimHitBx(const PSimHit *, CLHEP::HepRandomEngine *)
std::multimap< std::pair< unsigned int, int >, const PSimHit *, std::less< std::pair< unsigned int, int > > > DetectorHitMap
Definition: GEMDigiModel.h:35
std::set< std::pair< int, int > > Strips
Definition: GEMDigiModel.h:31
std::vector< PSimHit > PSimHitContainer
~GEMSignalModel() override
double averageShapingTime_
GEMSignalModel(const edm::ParameterSet &)