CMS 3D CMS Logo

SiStripGainsPCLWorker.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: CalibTracker/SiStripChannelGain
4 // Class: SiStripGainsPCLWorker
5 //
10 //
11 // Original Author: L. Quertermont (calibration algorithm)
12 // Contributors: M. Verzetti (data access)
13 // A. Di Mattia (PCL multi stream processing and monitoring)
14 // M. Delcourt (monitoring)
15 // M. Musich (migration to thread-safe DQMStore access)
16 //
17 // Created: Wed, 12 Apr 2017 14:46:48 GMT
18 //
19 
20 // CMSSW includes
62 
66 
67 // System includes
68 #include <unordered_map>
69 
70 //
71 // class declaration
72 //
73 
74 class SiStripGainsPCLWorker : public DQMGlobalEDAnalyzer<APVGain::APVGainHistograms> {
75 public:
76  explicit SiStripGainsPCLWorker(const edm::ParameterSet &);
77 
79  edm::Run const &,
80  edm::EventSetup const &,
81  APVGain::APVGainHistograms &) const override;
82  void dqmAnalyze(edm::Event const &, edm::EventSetup const &, APVGain::APVGainHistograms const &) const override;
83 
84  static void fillDescriptions(edm::ConfigurationDescriptions &descriptions);
85 
86 private:
87  void beginJob() override;
88  void dqmBeginRun(edm::Run const &, edm::EventSetup const &, APVGain::APVGainHistograms &) const override;
90 
91  std::vector<std::string> dqm_tag_;
92 
93  int statCollectionFromMode(const char *tag) const;
94 
97  double MinTrackEta;
98  double MaxTrackEta;
99  unsigned int MaxNrStrips;
100  unsigned int MinTrackHits;
112  std::vector<std::string> VChargeHisto;
114  //Data members for processing
115 
140 
145 
148  std::string TrackPrefix_; //("track");
150  std::string CalibPrefix_; //("GainCalibration");
152 
153  // maps histograms index to topology
154  std::map<unsigned int, APVloc> theTopologyMap;
155 };
156 
157 inline int SiStripGainsPCLWorker::statCollectionFromMode(const char *tag) const {
158  std::vector<std::string>::const_iterator it = dqm_tag_.begin();
159  while (it != dqm_tag_.end()) {
160  if (*it == std::string(tag))
161  return it - dqm_tag_.begin();
162  it++;
163  }
164 
165  if (std::string(tag).empty())
166  return 0; // return StdBunch calibration mode for backward compatibility
167 
168  return None;
169 }
SiStripGainsPCLWorker::trackpt_token_
edm::EDGetTokenT< std::vector< float > > trackpt_token_
Definition: SiStripGainsPCLWorker.h:119
FEDNumbering.h
SiStripGainsPCLWorker::MinTrackHits
unsigned int MinTrackHits
Definition: SiStripGainsPCLWorker.h:100
SiStripGainsPCLWorker::tkGeomToken_
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > tkGeomToken_
Definition: SiStripGainsPCLWorker.h:142
SiStripGainsPCLWorker::VChargeHisto
std::vector< std::string > VChargeHisto
Definition: SiStripGainsPCLWorker.h:112
SiStripGainsPCLWorker::charge_token_
edm::EDGetTokenT< std::vector< unsigned int > > charge_token_
Definition: SiStripGainsPCLWorker.h:134
SiStripGainsPCLWorker::m_DQMdir
std::string m_DQMdir
Definition: SiStripGainsPCLWorker.h:110
StripGeomDetUnit.h
TrackerGeometry.h
SiStripGain.h
SiStripGainsPCLWorker::nstrips_token_
edm::EDGetTokenT< std::vector< unsigned short > > nstrips_token_
Definition: SiStripGainsPCLWorker.h:130
SiStripGainsPCLWorker::MinTrackMomentum
double MinTrackMomentum
Definition: SiStripGainsPCLWorker.h:95
SiStripGainsPCLWorker::dqmAnalyze
void dqmAnalyze(edm::Event const &, edm::EventSetup const &, APVGain::APVGainHistograms const &) const override
Definition: SiStripGainsPCLWorker.cc:162
edm::Run
Definition: Run.h:45
edm::EDGetTokenT
Definition: EDGetToken.h:33
SiStripGainsPCLWorker::amplitude_token_
edm::EDGetTokenT< std::vector< unsigned char > > amplitude_token_
Definition: SiStripGainsPCLWorker.h:137
GeomDetType.h
TrackingGeometry.h
SiStripGainRcd.h
DQMStore.h
SiStripGainsPCLWorker::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &, APVGain::APVGainHistograms &) const override
Definition: SiStripGainsPCLWorker.cc:552
SiStripGainsPCLWorker::MaxTrackMomentum
double MaxTrackMomentum
Definition: SiStripGainsPCLWorker.h:96
StripTopology.h
SiStripGainsPCLWorker::TrigTech_token_
edm::EDGetTokenT< std::vector< bool > > TrigTech_token_
Definition: SiStripGainsPCLWorker.h:116
APVGainStruct.h
SiStripGainsPCLWorker::CalibSuffix_
std::string CalibSuffix_
Definition: SiStripGainsPCLWorker.h:151
SiStripGainsPCLWorker::AllowSaturation
bool AllowSaturation
Definition: SiStripGainsPCLWorker.h:103
SiStripGainsPCLWorker::beginJob
void beginJob() override
Definition: SiStripGainsPCLWorker.cc:433
SiStripGainsPCLWorker::localdirz_token_
edm::EDGetTokenT< std::vector< double > > localdirz_token_
Definition: SiStripGainsPCLWorker.h:128
SiStripGainsPCLWorker::trackphi_token_
edm::EDGetTokenT< std::vector< double > > trackphi_token_
Definition: SiStripGainsPCLWorker.h:121
SiStripGainsPCLWorker::path_token_
edm::EDGetTokenT< std::vector< double > > path_token_
Definition: SiStripGainsPCLWorker.h:135
SiStripGainsPCLWorker::FirstSetOfConstants
bool FirstSetOfConstants
Definition: SiStripGainsPCLWorker.h:104
MakerMacros.h
TrackerTopology.h
SiStripGainsPCLWorker::gainusedTick_token_
edm::EDGetTokenT< std::vector< double > > gainusedTick_token_
Definition: SiStripGainsPCLWorker.h:139
SiStripDetCabling.h
SiStripGainsPCLWorker::MinTrackEta
double MinTrackEta
Definition: SiStripGainsPCLWorker.h:97
Track.h
None
Definition: APVGainStruct.h:53
TrackFwd.h
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition: GlobalPosition_Frontier_DevDB_cff.py:11
TrapezoidalPlaneBounds.h
Service.h
SiStripGainsPCLWorker::TrackPrefix_
std::string TrackPrefix_
Definition: SiStripGainsPCLWorker.h:148
SiStripGainsPCLWorker::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: SiStripGainsPCLWorker.cc:545
SiStripGainsPCLWorker::TrackSuffix_
std::string TrackSuffix_
Definition: SiStripGainsPCLWorker.h:149
RectangularPlaneBounds.h
SiStripGainsPCLWorker::Validation
bool Validation
Definition: SiStripGainsPCLWorker.h:105
SiStripGainsPCLWorker::trackindex_token_
edm::EDGetTokenT< std::vector< int > > trackindex_token_
Definition: SiStripGainsPCLWorker.h:124
SiStripGainsPCLWorker::farfromedge_token_
edm::EDGetTokenT< std::vector< bool > > farfromedge_token_
Definition: SiStripGainsPCLWorker.h:133
SiStripApvGain.h
SiPixelRecHit.h
EDGetToken.h
TrajTrackAssociation.h
SiStripGainsPCLWorker::doChargeMonitorPerPlane
bool doChargeMonitorPerPlane
Definition: SiStripGainsPCLWorker.h:108
SiStripGainsPCLWorker::dqmBeginRun
void dqmBeginRun(edm::Run const &, edm::EventSetup const &, APVGain::APVGainHistograms &) const override
Definition: SiStripGainsPCLWorker.cc:110
SiStripGainsPCLWorker::SiStripGainsPCLWorker
SiStripGainsPCLWorker(const edm::ParameterSet &)
Definition: SiStripGainsPCLWorker.cc:9
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
SiStripGainsPCLWorker::saturation_token_
edm::EDGetTokenT< std::vector< bool > > saturation_token_
Definition: SiStripGainsPCLWorker.h:131
SiStripGainsPCLWorker::MaxNrStrips
unsigned int MaxNrStrips
Definition: SiStripGainsPCLWorker.h:99
SiStripGainsPCLWorker::tTopoToken_
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
Definition: SiStripGainsPCLWorker.h:141
TrackerDigiGeometryRecord.h
SiStripGainsPCLWorker::rawid_token_
edm::EDGetTokenT< std::vector< unsigned int > > rawid_token_
Definition: SiStripGainsPCLWorker.h:125
edm::ParameterSet
Definition: ParameterSet.h:47
SiStripGainsPCLWorker::trackalgo_token_
edm::EDGetTokenT< std::vector< int > > trackalgo_token_
Definition: SiStripGainsPCLWorker.h:123
Event.h
SiStripGainsPCLWorker::trackhitsvalid_token_
edm::EDGetTokenT< std::vector< unsigned int > > trackhitsvalid_token_
Definition: SiStripGainsPCLWorker.h:122
SiStripGainsPCLWorker::chargeoverpath_token_
edm::EDGetTokenT< std::vector< double > > chargeoverpath_token_
Definition: SiStripGainsPCLWorker.h:136
SiStripGainsPCLWorker::overlapping_token_
edm::EDGetTokenT< std::vector< bool > > overlapping_token_
Definition: SiStripGainsPCLWorker.h:132
SiStripGainsPCLWorker::dqm_tag_
std::vector< std::string > dqm_tag_
Definition: SiStripGainsPCLWorker.h:91
SiStripGainsPCLWorker::tracketa_token_
edm::EDGetTokenT< std::vector< double > > tracketa_token_
Definition: SiStripGainsPCLWorker.h:120
SiStripGainsPCLWorker::EventSuffix_
std::string EventSuffix_
Definition: SiStripGainsPCLWorker.h:147
edm::EventSetup
Definition: EventSetup.h:57
histograms
Definition: histograms.py:1
SiStripGainsPCLWorker::OldGainRemoving
bool OldGainRemoving
Definition: SiStripGainsPCLWorker.h:106
SiStripGainsPCLWorker::theTopologyMap
std::map< unsigned int, APVloc > theTopologyMap
Definition: SiStripGainsPCLWorker.h:154
GeometricDet.h
edm::ESGetToken< TrackerTopology, TrackerTopologyRcd >
SiStripGainsPCLWorker::localdirx_token_
edm::EDGetTokenT< std::vector< double > > localdirx_token_
Definition: SiStripGainsPCLWorker.h:126
SiStripGainsPCLWorker::gainused_token_
edm::EDGetTokenT< std::vector< double > > gainused_token_
Definition: SiStripGainsPCLWorker.h:138
SiStripGainsPCLWorker::statCollectionFromMode
int statCollectionFromMode(const char *tag) const
Definition: SiStripGainsPCLWorker.h:157
SiStripRecHit1D.h
SiStripGainsPCLWorker::MaxTrackingIteration
int MaxTrackingIteration
Definition: SiStripGainsPCLWorker.h:102
Trajectory.h
GeomDet.h
SiStripGainsPCLWorker::localdiry_token_
edm::EDGetTokenT< std::vector< double > > localdiry_token_
Definition: SiStripGainsPCLWorker.h:127
DetId.h
Frameworkfwd.h
ESWatcher.h
relativeConstraints.empty
bool empty
Definition: relativeConstraints.py:46
SiStripQuality.h
PixelGeomDetUnit.h
SiStripGainsPCLWorker::MaxTrackEta
double MaxTrackEta
Definition: SiStripGainsPCLWorker.h:98
SiStripQualityRcd.h
SiStripGainsPCLWorker::EventPrefix_
std::string EventPrefix_
Definition: SiStripGainsPCLWorker.h:146
Exception.h
SiStripGainsPCLWorker::qualityToken_
edm::ESGetToken< SiStripQuality, SiStripQualityRcd > qualityToken_
Definition: SiStripGainsPCLWorker.h:144
dqm::implementation::IBooker
Definition: DQMStore.h:43
SiStripGainsPCLWorker::MaxTrackChiOverNdf
double MaxTrackChiOverNdf
Definition: SiStripGainsPCLWorker.h:101
DQMGlobalEDAnalyzer
Definition: DQMGlobalEDAnalyzer.h:76
SiStripGainsPCLWorker::firststrip_token_
edm::EDGetTokenT< std::vector< unsigned short > > firststrip_token_
Definition: SiStripGainsPCLWorker.h:129
SiStripDetCablingRcd.h
SiStripGainsPCLWorker::useCalibration
bool useCalibration
Definition: SiStripGainsPCLWorker.h:107
ParameterSet.h
SiStripMatchedRecHit2D.h
SiStripClusterCollection.h
SiStripGainsPCLWorker::trackp_token_
edm::EDGetTokenT< std::vector< float > > trackp_token_
Definition: SiStripGainsPCLWorker.h:118
edm::Event
Definition: Event.h:73
SiStripGainsPCLWorker::checkBookAPVColls
void checkBookAPVColls(const TrackerGeometry *bareTkGeomPtr, APVGain::APVGainHistograms &histograms) const
Definition: SiStripGainsPCLWorker.cc:437
APVGainHelpers.h
SiStripRecHit2D.h
SiStripGainsPCLWorker::CalibPrefix_
std::string CalibPrefix_
Definition: SiStripGainsPCLWorker.h:150
StripSubdetector.h
SiStripGainsPCLWorker::gainToken_
edm::ESGetToken< SiStripGain, SiStripGainRcd > gainToken_
Definition: SiStripGainsPCLWorker.h:143
APVGain::APVGainHistograms
Definition: APVGainHelpers.h:62
SiStripGainsPCLWorker::trackchi2ndof_token_
edm::EDGetTokenT< std::vector< double > > trackchi2ndof_token_
Definition: SiStripGainsPCLWorker.h:117
SiStripGainsPCLWorker::m_calibrationMode
std::string m_calibrationMode
Definition: SiStripGainsPCLWorker.h:111
TrackerGeometry
Definition: TrackerGeometry.h:14
DQMGlobalEDAnalyzer.h
SiStripGainsPCLWorker
user includes
Definition: SiStripGainsPCLWorker.h:74