CMS 3D CMS Logo

GEMTrivialModel.cc
Go to the documentation of this file.
2 
6 
8 
9 #include <cmath>
10 #include <utility>
11 #include <map>
12 
13 
15  : GEMDigiModel(config)
16 {
17 }
18 
19 void
21  const edm::PSimHitContainer& simHits, CLHEP::HepRandomEngine* engine)
22 {
24  detectorHitMap_.clear();
26 
27  const Topology& topology(roll->specs()->topology());
28 
29  for (const auto & hit: simHits)
30  {
31  if (std::abs(hit.particleType()) != 13) continue;
32  auto entry = hit.entryPoint();
33  // please keep hit time always 0 for this model
34  std::pair<int, int> digi(topology.channel(entry) + 1, 0);
36  strips_.emplace(digi);
37  }
38 }
39 
40 
41 std::vector<std::pair<int,int> >
42 GEMTrivialModel::simulateClustering(const GEMEtaPartition* roll, const PSimHit* simHit, const int bx, CLHEP::HepRandomEngine* engine)
43 {
44  return std::vector<std::pair<int,int> >();
45 }
46 
CaloTopology const * topology(0)
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:50
Definition: config.py:1
GEMDetId id() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
std::vector< std::pair< int, int > > simulateClustering(const GEMEtaPartition *, const PSimHit *, const int, CLHEP::HepRandomEngine *engine) override
const Topology & topology() const override
const GEMEtaPartitionSpecs * specs() const
void simulateSignal(const GEMEtaPartition *, const edm::PSimHitContainer &, CLHEP::HepRandomEngine *engine) override
std::set< std::pair< int, int > > strips_
Definition: GEMDigiModel.h:65
void clear()
Definition: DetSet.h:71
DetectorHitMap detectorHitMap_
Definition: GEMDigiModel.h:78
std::vector< PSimHit > PSimHitContainer
StripDigiSimLinks stripDigiSimLinks_
Definition: GEMDigiModel.h:79
GEMTrivialModel(const edm::ParameterSet &)
edm::DetSet< StripDigiSimLink > StripDigiSimLinks
Definition: GEMDigiModel.h:36