CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 ()
 
std::vector< std::pair< int,
int > > 
simulateClustering (const GEMEtaPartition *, const PSimHit *, const int, CLHEP::HepRandomEngine *engine)
 
void simulateNoise (const GEMEtaPartition *, CLHEP::HepRandomEngine *engine)
 
void simulateSignal (const GEMEtaPartition *, const edm::PSimHitContainer &, CLHEP::HepRandomEngine *engine)
 
 ~GEMTrivialModel ()
 
- Public Member Functions inherited from GEMDigiModel
void fillDigis (int rollDetId, GEMDigiCollection &)
 
const GEMGeometrygetGeometry ()
 
void setGeometry (const GEMGeometry *geom)
 
const StripDigiSimLinksstripDigiSimLinks () const
 
virtual ~GEMDigiModel ()
 

Additional Inherited Members

- Public Types inherited from GEMDigiModel
typedef edm::DetSet
< StripDigiSimLink
StripDigiSimLinks
 
- 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...
 
 GEMDigiModel (const edm::ParameterSet &)
 
- Protected Attributes inherited from GEMDigiModel
DetectorHitMap detectorHitMap_
 
const GEMGeometrygeometry_
 
StripDigiSimLinks stripDigiSimLinks_
 
std::set< std::pair< int, int > > strips_
 

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:58
GEMTrivialModel::~GEMTrivialModel ( )
inline

Definition at line 22 of file GEMTrivialModel.h.

22 {}

Member Function Documentation

void GEMTrivialModel::setup ( void  )
inlinevirtual

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 
)
virtual

Implements GEMDigiModel.

Definition at line 42 of file GEMTrivialModel.cc.

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

Implements GEMDigiModel.

Definition at line 26 of file GEMTrivialModel.h.

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

Implements GEMDigiModel.

Definition at line 20 of file GEMTrivialModel.cc.

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

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_.insert(digi);
37  }
38 }
CaloTopology const * topology(0)
GEMDetId id() const
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
const Topology & topology() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
Container::value_type value_type
const GEMEtaPartitionSpecs * specs() const
tuple simHits
Definition: trackerHits.py:16
std::set< std::pair< int, int > > strips_
Definition: GEMDigiModel.h:62
void clear()
Definition: DetSet.h:69
DetectorHitMap detectorHitMap_
Definition: GEMDigiModel.h:74
StripDigiSimLinks stripDigiSimLinks_
Definition: GEMDigiModel.h:75
edm::DetSet< StripDigiSimLink > StripDigiSimLinks
Definition: GEMDigiModel.h:35