CMS 3D CMS Logo

GEMCSCSegmentBuilder.h
Go to the documentation of this file.
1 #ifndef GEMCSCSegment_GEMCSCSegmentBuilder_h
2 #define GEMCSCSegment_GEMCSCSegmentBuilder_h
3 
19 
22 
24 
31 
33 public:
35  CSCStationIndex(int region, int station, int ring, int chamber, int layer)
38 
39  int region() const { return _region; }
40  int station() const { return _station; }
41  int ring() const { return _ring; }
42  int chamber() const { return _chamber; }
43  int layer() const { return _layer; }
44 
45  bool operator<(const CSCStationIndex& cscind) const {
46  if (cscind.region() != this->region())
47  return cscind.region() < this->region();
48  else if (cscind.station() != this->station())
49  return cscind.station() < this->station();
50  else if (cscind.ring() != this->ring())
51  return cscind.ring() < this->ring();
52  else if (cscind.chamber() != this->chamber())
53  return cscind.chamber() < this->chamber();
54  else if (cscind.layer() != this->layer())
55  return cscind.layer() < this->layer();
56  return false;
57  }
58 
59 private:
60  int _region;
61  int _station;
62  int _ring;
63  int _chamber;
64  int _layer;
65 };
66 
68 
70 public:
71  explicit GEMCSCSegmentBuilder(const edm::ParameterSet&);
74 
75  void setGeometry(const GEMGeometry* gemgeom, const CSCGeometry* cscgeom);
76  void LinkGEMRollsToCSCChamberIndex(const GEMGeometry* gemgeom, const CSCGeometry* cscgeom);
77 
78 protected:
79  std::map<CSCStationIndex, std::set<GEMDetId> > rollstoreCSC;
80 
81 private:
82  std::unique_ptr<GEMCSCSegmentAlgorithm> algo;
85 };
86 
87 #endif
GEMRecHitCollection
CSCRecHit2DCollection.h
GEMCSCSegmentBuilder::cscgeom_
const CSCGeometry * cscgeom_
Definition: GEMCSCSegmentBuilder.h:84
GEMRecHit.h
CSCStationIndex::operator<
bool operator<(const CSCStationIndex &cscind) const
Definition: GEMCSCSegmentBuilder.h:45
CSCStationIndex::station
int station() const
Definition: GEMCSCSegmentBuilder.h:40
GEMCSCSegmentBuilder::LinkGEMRollsToCSCChamberIndex
void LinkGEMRollsToCSCChamberIndex(const GEMGeometry *gemgeom, const CSCGeometry *cscgeom)
Definition: GEMCSCSegmentBuilder.cc:45
CSCSegmentCollection
CSCStationIndex::_station
int _station
Definition: GEMCSCSegmentBuilder.h:61
CSCDetId.h
CSCGeometry
Definition: CSCGeometry.h:24
GEMCSCSegmentBuilder::algo
std::unique_ptr< GEMCSCSegmentAlgorithm > algo
Definition: GEMCSCSegmentBuilder.h:82
GEMEtaPartition.h
CSCStationIndex::_layer
int _layer
Definition: GEMCSCSegmentBuilder.h:64
CSCStationIndex::~CSCStationIndex
~CSCStationIndex()
Definition: GEMCSCSegmentBuilder.h:37
HI_PhotonSkim_cff.rechits
rechits
Definition: HI_PhotonSkim_cff.py:76
CSCStationIndex::CSCStationIndex
CSCStationIndex()
Definition: GEMCSCSegmentBuilder.h:34
GEMCSCSegmentCollection
GEMCSCSegmentBuilder::build
void build(const GEMRecHitCollection *rechits, const CSCSegmentCollection *cscsegments, GEMCSCSegmentCollection &oc)
Definition: GEMCSCSegmentBuilder.cc:92
edm::ParameterSet
Definition: ParameterSet.h:47
CSCStationIndex::_chamber
int _chamber
Definition: GEMCSCSegmentBuilder.h:63
Event.h
CSCStationIndex::_region
int _region
Definition: GEMCSCSegmentBuilder.h:60
GEMCSCSegmentBuilder::GEMCSCSegmentBuilder
GEMCSCSegmentBuilder(const edm::ParameterSet &)
Definition: GEMCSCSegmentBuilder.cc:31
GEMCSCSegmentBuilder::gemgeom_
const GEMGeometry * gemgeom_
Definition: GEMCSCSegmentBuilder.h:83
GEMRecHitCollection.h
GEMCSCSegmentAlgorithm
Definition: GEMCSCSegmentAlgorithm.h:27
GEMCSCSegmentBuilder::rollstoreCSC
std::map< CSCStationIndex, std::set< GEMDetId > > rollstoreCSC
Definition: GEMCSCSegmentBuilder.h:79
CSCStationIndex::ring
int ring() const
Definition: GEMCSCSegmentBuilder.h:41
GEMGeometry.h
GEMCSCSegmentBuilder::~GEMCSCSegmentBuilder
~GEMCSCSegmentBuilder()
Definition: GEMCSCSegmentBuilder.cc:41
GEMCSCSegmentCollection.h
CSCStationIndex::region
int region() const
Definition: GEMCSCSegmentBuilder.h:39
CSCStationIndex::CSCStationIndex
CSCStationIndex(int region, int station, int ring, int chamber, int layer)
Definition: GEMCSCSegmentBuilder.h:35
GEMGeometry
Definition: GEMGeometry.h:24
ParameterSet.h
GEMCSCSegmentBuilder
Definition: GEMCSCSegmentBuilder.h:69
CSCStationIndex
Definition: GEMCSCSegmentBuilder.h:32
CSCStationIndex::layer
int layer() const
Definition: GEMCSCSegmentBuilder.h:43
GEMCSCSegmentBuilder::setGeometry
void setGeometry(const GEMGeometry *gemgeom, const CSCGeometry *cscgeom)
Definition: GEMCSCSegmentBuilder.cc:363
CSCStationIndex::_ring
int _ring
Definition: GEMCSCSegmentBuilder.h:62
CSCStationIndex::chamber
int chamber() const
Definition: GEMCSCSegmentBuilder.h:42
CSCGeometry.h
CSCSegmentCollection.h