CMS 3D CMS Logo

CSCSegmentValidation.h
Go to the documentation of this file.
1 #ifndef CSCSegmentValidation_h
2 #define CSCSegmentValidation_h
3 
10 
12 public:
14  ~CSCSegmentValidation() override;
16  void analyze(const edm::Event &, const edm::EventSetup &) override;
17 
18 private:
19  void plotResolution(const PSimHit &simHit, const CSCSegment &recHit, const CSCLayer *layer, int chamberType);
20 
21  bool hasSegment(int chamberId) const;
22  static int whatChamberType(int detId);
23 
25 
26  // map to count how many layers are hit. First index is chamber detId, second
27  // is layers that have hits
28  typedef std::map<int, std::vector<int>> ChamberHitMap;
31  void fillEfficiencyPlots();
32  // decide which SimHit to use for the direction
33  const PSimHit *keyHit(int chamberId) const;
34 
35  typedef std::map<int, std::vector<CSCSegment>> ChamberSegmentMap;
37  // the number of hits in a chamber to make it a shower
39 
51 
64 };
65 
66 #endif
CSCSegmentValidation::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: CSCSegmentValidation.cc:51
CSCSegmentValidation::theTypePlot5HitsNoShowerSeg
MonitorElement * theTypePlot5HitsNoShowerSeg
Definition: CSCSegmentValidation.h:57
CSCSegmentValidation::fillEfficiencyPlots
void fillEfficiencyPlots()
Definition: CSCSegmentValidation.cc:83
CSCSegmentValidation::plotResolution
void plotResolution(const PSimHit &simHit, const CSCSegment &recHit, const CSCLayer *layer, int chamberType)
Definition: CSCSegmentValidation.cc:153
CSCSegmentValidation::bookHistograms
void bookHistograms(DQMStore::IBooker &)
Definition: CSCSegmentValidation.cc:12
CSCSegmentValidation::theTypePlot6HitsNoShowerSeg
MonitorElement * theTypePlot6HitsNoShowerSeg
Definition: CSCSegmentValidation.h:61
edm::EDGetTokenT< CSCSegmentCollection >
CSCSegmentValidation::keyHit
const PSimHit * keyHit(int chamberId) const
Definition: CSCSegmentValidation.cc:205
CSCSegmentValidation::theTypePlot5HitsShower
MonitorElement * theTypePlot5HitsShower
Definition: CSCSegmentValidation.h:58
CSCSegmentValidation::thedYdZResolutionPlots
MonitorElement * thedYdZResolutionPlots[10]
Definition: CSCSegmentValidation.h:49
CSCSegmentValidation::theRdPhiPullPlots
MonitorElement * theRdPhiPullPlots[10]
Definition: CSCSegmentValidation.h:44
CSCSegmentValidation::ChamberSegmentMap
std::map< int, std::vector< CSCSegment > > ChamberSegmentMap
Definition: CSCSegmentValidation.h:35
CSCSegmentValidation::theNPerChamberTypePlot
MonitorElement * theNPerChamberTypePlot
Definition: CSCSegmentValidation.h:42
CSCSegmentValidation::~CSCSegmentValidation
~CSCSegmentValidation() override
Definition: CSCSegmentValidation.cc:10
CSCSegmentValidation::segments_Token_
edm::EDGetTokenT< CSCSegmentCollection > segments_Token_
Definition: CSCSegmentValidation.h:24
DQMStore.h
CSCLayer
Definition: CSCLayer.h:24
dqm::legacy::MonitorElement
Definition: MonitorElement.h:461
CSCSegmentValidation::theRdPhiResolutionPlots
MonitorElement * theRdPhiResolutionPlots[10]
Definition: CSCSegmentValidation.h:43
CSCSegmentValidation::theLayerHitsPerChamber
ChamberHitMap theLayerHitsPerChamber
Definition: CSCSegmentValidation.h:29
rpcPointValidation_cfi.recHit
recHit
Definition: rpcPointValidation_cfi.py:7
CSCSegmentValidation::ChamberHitMap
std::map< int, std::vector< int > > ChamberHitMap
Definition: CSCSegmentValidation.h:28
CSCSegmentValidation::theShowerThreshold
int theShowerThreshold
Definition: CSCSegmentValidation.h:38
CSCSegmentValidation::CSCSegmentValidation
CSCSegmentValidation(const edm::InputTag &inputTag, edm::ConsumesCollector &&iC)
Definition: CSCSegmentValidation.cc:5
rpcPointValidation_cfi.simHit
simHit
Definition: rpcPointValidation_cfi.py:24
CSCSegmentValidation::theTypePlot5HitsNoShower
MonitorElement * theTypePlot5HitsNoShower
Definition: CSCSegmentValidation.h:56
CSCSegmentValidation::hasSegment
bool hasSegment(int chamberId) const
Definition: CSCSegmentValidation.cc:144
CSCSegmentValidation::theTypePlot4HitsShower
MonitorElement * theTypePlot4HitsShower
Definition: CSCSegmentValidation.h:54
CSCSegmentValidation::theNPerEventPlot
MonitorElement * theNPerEventPlot
Definition: CSCSegmentValidation.h:40
CSCSegmentValidation::theNRecHitsPlot
MonitorElement * theNRecHitsPlot
Definition: CSCSegmentValidation.h:41
CSCSegment
Definition: CSCSegment.h:21
CSCSegmentValidation::theTypePlot4HitsNoShower
MonitorElement * theTypePlot4HitsNoShower
Definition: CSCSegmentValidation.h:52
CSCSegmentValidation
Definition: CSCSegmentValidation.h:11
CSCSegmentValidation::theTypePlot6HitsNoShower
MonitorElement * theTypePlot6HitsNoShower
Definition: CSCSegmentValidation.h:60
CSCSegmentValidation::theThetaPullPlots
MonitorElement * theThetaPullPlots[10]
Definition: CSCSegmentValidation.h:46
CSCSegmentValidation::whatChamberType
static int whatChamberType(int detId)
Definition: CSCSegmentValidation.cc:148
CSCSegmentValidation::theTypePlot6HitsShower
MonitorElement * theTypePlot6HitsShower
Definition: CSCSegmentValidation.h:62
CSCSegmentValidation::fillLayerHitsPerChamber
void fillLayerHitsPerChamber()
Definition: CSCSegmentValidation.cc:185
CSCSegmentValidation::thedXdZPullPlots
MonitorElement * thedXdZPullPlots[10]
Definition: CSCSegmentValidation.h:48
edm::EventSetup
Definition: EventSetup.h:57
CSCSegmentValidation::theTypePlot4HitsNoShowerSeg
MonitorElement * theTypePlot4HitsNoShowerSeg
Definition: CSCSegmentValidation.h:53
CSCSegmentValidation::theTypePlot5HitsShowerSeg
MonitorElement * theTypePlot5HitsShowerSeg
Definition: CSCSegmentValidation.h:59
CSCLayer.h
CSCSegmentValidation::theChamberSegmentMap
ChamberSegmentMap theChamberSegmentMap
Definition: CSCSegmentValidation.h:36
dqm::implementation::IBooker
Definition: DQMStore.h:43
CSCSegment.h
ConsumesCollector.h
CSCBaseValidation
Definition: CSCBaseValidation.h:15
CSCBaseValidation.h
PSimHit
Definition: PSimHit.h:15
SimL1EmulatorRepack_Full_cff.inputTag
inputTag
Definition: SimL1EmulatorRepack_Full_cff.py:56
edm::Event
Definition: Event.h:73
CSCSegmentValidation::thedXdZResolutionPlots
MonitorElement * thedXdZResolutionPlots[10]
Definition: CSCSegmentValidation.h:47
CSCSegmentValidation::thedYdZPullPlots
MonitorElement * thedYdZPullPlots[10]
Definition: CSCSegmentValidation.h:50
CSCSegmentValidation::theTypePlot4HitsShowerSeg
MonitorElement * theTypePlot4HitsShowerSeg
Definition: CSCSegmentValidation.h:55
CSCSegmentValidation::theThetaResolutionPlots
MonitorElement * theThetaResolutionPlots[10]
Definition: CSCSegmentValidation.h:45
edm::InputTag
Definition: InputTag.h:15
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
CSCSegmentValidation::theTypePlot6HitsShowerSeg
MonitorElement * theTypePlot6HitsShowerSeg
Definition: CSCSegmentValidation.h:63
CSCSegmentCollection.h