CMS 3D CMS Logo

List of all members | Public Member Functions
GEMTrivialModel Class Reference

#include <GEMTrivialModel.h>

Inheritance diagram for GEMTrivialModel:
GEMDigiModel

Public Member Functions

 GEMTrivialModel (const edm::ParameterSet &)
 
void setup () override
 
std::vector< std::pair< int, int > > simulateClustering (const GEMEtaPartition *, const PSimHit *, const int, CLHEP::HepRandomEngine *engine) override
 
void simulateNoise (const GEMEtaPartition *, CLHEP::HepRandomEngine *engine) override
 
void simulateSignal (const GEMEtaPartition *, const edm::PSimHitContainer &, CLHEP::HepRandomEngine *engine) override
 
 ~GEMTrivialModel () override
 
- Public Member Functions inherited from GEMDigiModel
void fillDigis (int rollDetId, GEMDigiCollection &)
 
const GEMDigiSimLinksgemDigiSimLinks () const
 
const GEMGeometrygetGeometry ()
 
void setGeometry (const GEMGeometry *geom)
 
const StripDigiSimLinksstripDigiSimLinks () const
 
virtual ~GEMDigiModel ()
 

Additional Inherited Members

- Public Types inherited from GEMDigiModel
typedef edm::DetSet< GEMDigiSimLinkGEMDigiSimLinks
 
typedef edm::DetSet< StripDigiSimLinkStripDigiSimLinks
 
- Protected Types inherited from GEMDigiModel
typedef std::multimap< std::pair< unsigned int, int >, const PSimHit *, std::less< std::pair< unsigned int, int > > > DetectorHitMap
 
- Protected Member Functions inherited from GEMDigiModel
void addLinks (unsigned int strip, int bx)
 creates links from Digi to SimTrack More...
 
void addLinksWithPartId (unsigned int strip, int bx)
 
 GEMDigiModel (const edm::ParameterSet &)
 
- Protected Attributes inherited from GEMDigiModel
DetectorHitMap detectorHitMap_
 
const GEMGeometrygeometry_
 
StripDigiSimLinks stripDigiSimLinks_
 
std::set< std::pair< int, int > > strips_
 
GEMDigiSimLinks theGemDigiSimLinks_
 

Detailed Description

Class for the GEM strip response simulation based on a trivial model

Author
Sven Dildick

Definition at line 16 of file GEMTrivialModel.h.

Constructor & Destructor Documentation

GEMTrivialModel::GEMTrivialModel ( const edm::ParameterSet config)

Definition at line 14 of file GEMTrivialModel.cc.

15  : GEMDigiModel(config)
16 {
17 }
GEMDigiModel(const edm::ParameterSet &)
Definition: GEMDigiModel.h:61
GEMTrivialModel::~GEMTrivialModel ( )
inlineoverride

Definition at line 22 of file GEMTrivialModel.h.

References simulateSignal().

22 {}

Member Function Documentation

void GEMTrivialModel::setup ( )
inlineoverridevirtual

Implements GEMDigiModel.

Definition at line 31 of file GEMTrivialModel.h.

31 {}
std::vector< std::pair< int, int > > GEMTrivialModel::simulateClustering ( const GEMEtaPartition roll,
const PSimHit simHit,
const int  bx,
CLHEP::HepRandomEngine *  engine 
)
overridevirtual

Implements GEMDigiModel.

Definition at line 42 of file GEMTrivialModel.cc.

Referenced by simulateNoise().

43 {
44  return std::vector<std::pair<int,int> >();
45 }
void GEMTrivialModel::simulateNoise ( const GEMEtaPartition ,
CLHEP::HepRandomEngine *  engine 
)
inlineoverridevirtual

Implements GEMDigiModel.

Definition at line 26 of file GEMTrivialModel.h.

References simulateClustering().

26 {}
void GEMTrivialModel::simulateSignal ( const GEMEtaPartition roll,
const edm::PSimHitContainer simHits,
CLHEP::HepRandomEngine *  engine 
)
overridevirtual

Implements GEMDigiModel.

Definition at line 20 of file GEMTrivialModel.cc.

References funct::abs(), edm::DetSet< T >::clear(), GEMDigiModel::detectorHitMap_, mps_splice::entry, GEMEtaPartition::id(), DetId::rawId(), GEMEtaPartition::specs(), GEMDigiModel::stripDigiSimLinks_, GEMDigiModel::strips_, GEMEtaPartitionSpecs::topology(), and ecaldqm::topology().

Referenced by ~GEMTrivialModel().

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 }
CaloTopology const * topology(0)
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:50
GEMDetId id() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
const Topology & topology() const override
const GEMEtaPartitionSpecs * specs() const
std::set< std::pair< int, int > > strips_
Definition: GEMDigiModel.h:65
void clear()
Definition: DetSet.h:69
DetectorHitMap detectorHitMap_
Definition: GEMDigiModel.h:78
StripDigiSimLinks stripDigiSimLinks_
Definition: GEMDigiModel.h:79
edm::DetSet< StripDigiSimLink > StripDigiSimLinks
Definition: GEMDigiModel.h:36