CMS 3D CMS Logo

SiPixelOfflineCalibAnalysisBase.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: SiPixelOfflineCalibAnalysisBase
4 // Class: SiPixelOfflineCalibAnalysisBase
5 //
13 //
14 // Original Author: Evan Klose Friis
15 // additions by: Freya Blekman
16 // Created: Tue Nov 6 17:27:19 CET 2007
17 //
18 //
19 
21 
23 
26 
31 #include "TList.h"
32 
35 // constructors and destructor
36 //
38  : runnumbers_(0), eventCounter_(0) {
39  siPixelCalibDigiProducer_ = iConfig.getParameter<edm::InputTag>("DetSetVectorSiPixelCalibDigiTag");
40  createOutputFile_ = iConfig.getUntrackedParameter<bool>("saveFile", false);
41  outputFileName_ = iConfig.getParameter<std::string>("outputFileName");
44  tPixelCalibDigi = consumes<edm::DetSetVector<SiPixelCalibDigi> >(siPixelCalibDigiProducer_);
45 
47  esConsumes<SiPixelCalibConfiguration, SiPixelCalibConfigurationRcd, edm::Transition::BeginRun>();
48  calibToken_ = esConsumes<SiPixelCalibConfiguration, SiPixelCalibConfigurationRcd>();
49  trackerGeomToken_ = esConsumes<TrackerGeometry, TrackerDigiGeometryRecord>();
50  cablingMapToken_ = esConsumes<SiPixelFedCablingMap, SiPixelFedCablingMapRcd>();
51 }
52 
54  throw cms::Exception("") << "ERROR: Classes derived from SiPixelOfflineCalibAnalysisBase must call "
55  "SiPixelOfflineCalibAnalysisBase::SiPixelOfflineCalibAnalysisBase(const "
56  "edm::ParameterSet& iConfig) from their constructor."
57  << std::endl;
58 }
59 
61 
62 //
63 // member functions
64 //
65 
66 // ------------ method called to for each event ------------
68  using namespace edm;
69 
70  calib_ = iSetup.getHandle(calibToken_);
73  if (eventCounter_ == 0)
74  this->calibrationSetup(iSetup);
75  eventCounter_++;
76 
77  // check first if you're analyzing the right type of calibration
79  return;
80 
81  uint32_t runnumber = iEvent.id().run();
82  if (runnumbers_.empty())
83  runnumbers_.push_back(runnumber);
84  else {
85  bool foundnumber = false;
86  for (size_t iter = 0; iter < runnumbers_.size() && !foundnumber; ++iter) {
87  if (runnumbers_[iter] == runnumber) {
88  foundnumber = true;
89  continue;
90  }
91  }
92  if (!foundnumber)
93  runnumbers_.push_back(runnumber);
94  }
95 
97  iEvent.getByToken(tPixelCalibDigi, thePlaquettes);
98 
100 
101  //loop over the plaquettes pulsed in this pattern
102  for (digiIter = thePlaquettes->begin(); digiIter != thePlaquettes->end(); ++digiIter) {
103  uint32_t detId = digiIter->id;
104  //check to see if this detID has not been encountered. If not, run the newDetID (pure virtual) function
105  if (detIdsEntered_.find(detId) == detIdsEntered_.end()) {
106  detIdsEntered_.insert(std::make_pair(detId, 0));
107  detIdNames_.insert(std::make_pair(detId, translateDetIdToString(detId)));
108  newDetID(detId);
109  }
111  //loop over pixels pulsed in the current plaquette
112  for (ipix = digiIter->data.begin(); ipix != digiIter->end(); ++ipix) {
113  //called derived function to fit this curve
114  this->doFits(detId, ipix);
115  }
116  }
117 }
118 
120  //load the calibration information from the database
122 
123  calibrationMode_ = calib->getCalibrationMode();
124  nTriggers_ = calib->getNTriggers();
125  vCalValues_ = calib->getVCalValues();
126  std::cout << "!!!! in beginRun" << std::endl;
127  edm::LogInfo("SiPixelOfflineCalibAnalysisBase")
128  << "Calibration file loaded. Mode: " << calibrationMode_ << " nTriggers: " << nTriggers_
129  << " Vcal steps: " << vCalValues_.size() << std::endl;
130  //call calibrationSetup virtual function
131  this->calibrationSetup(iSetup);
133 }
135 // ------------ method called once each job just before starting event loop ------------
136 
137 // ------------ method called once each job just after ending the event loop ------------
139  this->calibrationEnd();
140  edm::LogInfo("SiPixelOfflineCalibAnalysisBase") << "Running end job... output file name is: " << outputFileName_;
141  if (!outputFileName_.empty() && createOutputFile_) {
142  edm::LogInfo("SiPixelOfflineCalibAnalysisBase") << "Writing ROOT file to: " << outputFileName_ << std::endl;
144  }
145 }
146 
147 // ------------ helper functions ---------------------------------------------------------
148 
149 const std::vector<short>* SiPixelOfflineCalibAnalysisBase::getVcalValues() { return &vCalValues_; }
150 
152  std::map<uint32_t, std::string>::iterator detNameIter = detIdNames_.find(detid);
153  if (detNameIter != detIdNames_.end()) {
154  return detNameIter->second;
155  }
156  std::string output = "DetID translation error";
157  DetId detId(detid);
158  uint32_t detSubId = detId.subdetId();
159  if (detSubId > 2 || detSubId < 1) {
160  edm::LogError("SiPixelOfflineCalibAnalysisBase")
161  << "ERROR: Expected a pixel detector ID (1 - barrel, 2 - forward) but got " << detSubId << std::endl;
162  return output;
163  }
164  if (detSubId == 2) //FPIX
165  {
166  PixelEndcapName nameworker(detid);
167  output = nameworker.name();
168  } else //BPIX
169  {
170  PixelBarrelName nameworker(detid);
171  output = nameworker.name();
172  }
173  detIdNames_.insert(std::make_pair(detid, output));
174  return output;
175 }
176 
178  uint32_t detid, std::string name, std::string title, int nchX, double lowX, double highX) {
180  return daqBE_->book1D(hid, title, nchX, lowX, highX);
181 }
182 
184  uint32_t detid, std::string name, std::string title, int nchX, float* xbinsize) {
186  return daqBE_->book1D(hid, title, nchX, xbinsize);
187 }
188 
192  int nchX,
193  double lowX,
194  double highX,
195  int nchY,
196  double lowY,
197  double highY) {
199  return daqBE_->book2D(hid, title, nchX, lowX, highX, nchY, lowY, highY);
200 }
201 
203  uint32_t detid, std::string name, std::string title) {
204  DetId detId(detid);
205  const TrackerGeometry& theTracker(*geom_);
206  const PixelGeomDetUnit* theGeomDet = dynamic_cast<const PixelGeomDetUnit*>(theTracker.idToDet(detId));
207  int maxcol = theGeomDet->specificTopology().ncolumns();
208  int maxrow = theGeomDet->specificTopology().nrows();
209 
211  return daqBE_->book2D(hid, title, maxcol, 0, maxcol, maxrow, 0, maxrow);
212 }
213 
216  return daqBE_->dirExists(dirName);
217 }
218 
220  return folderMaker_->setModuleFolder(detID, 0);
221 }
222 
223 // ------------ virtual functions ------------------------------------------------
225 
226 bool SiPixelOfflineCalibAnalysisBase::doFits(uint32_t detid, std::vector<SiPixelCalibDigi>::const_iterator ipix) {
227  short row = ipix->row();
228  short col = ipix->col();
229  std::vector<uint8_t> nentries = ipix->getnentries();
230  std::vector<uint32_t> sum = ipix->getsum();
231  std::vector<uint32_t> sumquares = ipix->getsumsquares();
232  //do nothing
233  //return false;
234  //
235  //DEBUG
236  std::cout << "Row: " << row << " Col: " << col << std::endl;
237  for (unsigned int i = 0; i < sum.size(); i++) {
238  std::cout << sum[i] << " ";
239  }
240  std::cout << std::endl;
241  return false;
242 }
243 
245  //do nothing
246 }
247 
249  // do nothing
250 }
252  //do nothing
253  edm::LogInfo("SiPixelOfflineCalibAnalysisBase")
254  << "SiPixelOfflineCalibAnalysisBase - Found new DetID: " << detid << " Name: " << detIdNames_[detid];
255 }
256 
257 bool SiPixelOfflineCalibAnalysisBase::checkPixel(uint32_t detid, short row, short col) {
258  // finds the fed ID:
259  int thefedid = -1;
260  for (int fedid = 0; fedid <= 40 && thefedid == -1; ++fedid) {
262  if (converter.hasDetUnit(detid)) {
263  thefedid = fedid;
264  }
265  }
266  if (thefedid == -1)
267  return false; // fed ID not associated with det ID. No pattern check possible
268 
269  SiPixelFrameConverter formatter(theCablingMap_.product(), thefedid);
272 
273  formatter.toCabling(cabling, detector);
274  // cabling should now contain cabling.roc and cabling.dcol and cabling.pxid
275 
276  // however, the coordinates now need to be converted from dcl, pxid to the row,col coordinates used in the calibration info
278  loc.dcol = cabling.dcol;
279  loc.pxid = cabling.pxid;
280  sipixelobjects::LocalPixel locpixel(loc);
281  short localrow = locpixel.rocRow();
282  short localcol = locpixel.rocCol();
283 
284  // now get the patterns from the calib object:
285  std::vector<short> calibcols = calib_->getColumnPattern();
286  std::vector<short> calibrows = calib_->getRowPattern();
287  // first check rows:
288  for (size_t irow = 0; irow < calibrows.size(); ++irow) {
289  if (calibrows[irow] == localrow) {
290  // check the columns
291  for (size_t icol = 0; icol < calibcols.size(); ++icol) {
292  if (calibcols[icol] == localcol)
293  return true;
294  }
295  }
296  }
297 
298  return false;
299 }
300 
301 // function to add tf1's to ME's:
303  if (func) {
304  ele->getTH1()->GetListOfFunctions()->Add(func);
305  }
306  return;
307 }
TrackerGeometry::idToDet
const TrackerGeomDet * idToDet(DetId) const override
Definition: TrackerGeometry.cc:193
SiPixelOfflineCalibAnalysisBase::tPixelCalibDigi
edm::EDGetTokenT< edm::DetSetVector< SiPixelCalibDigi > > tPixelCalibDigi
Definition: SiPixelOfflineCalibAnalysisBase.h:139
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
SiPixelOfflineCalibAnalysisBase::outputFileName_
std::string outputFileName_
Definition: SiPixelOfflineCalibAnalysisBase.h:126
SiPixelOfflineCalibAnalysisBase::nTriggers_
short nTriggers_
Definition: SiPixelOfflineCalibAnalysisBase.h:118
SiPixelOfflineCalibAnalysisBase::addTF1ToDQMMonitoringElement
void addTF1ToDQMMonitoringElement(MonitorElement *ele, TF1 *func)
Definition: SiPixelOfflineCalibAnalysisBase.cc:302
SiPixelOfflineCalibAnalysisBase::translateDetIdToString
std::string translateDetIdToString(uint32_t detid)
Definition: SiPixelOfflineCalibAnalysisBase.cc:151
SiPixelOfflineCalibAnalysisBase::doFits
virtual bool doFits(uint32_t detid, std::vector< SiPixelCalibDigi >::const_iterator ipix)
Definition: SiPixelOfflineCalibAnalysisBase.cc:226
runGCPTkAlMap.title
string title
Definition: runGCPTkAlMap.py:94
mps_fire.i
i
Definition: mps_fire.py:428
SiPixelOfflineCalibAnalysisBase::calib_
edm::ESHandle< SiPixelCalibConfiguration > calib_
Definition: SiPixelOfflineCalibAnalysisBase.h:108
SiPixelOfflineCalibAnalysisBase::calibrationMode_
std::string calibrationMode_
Definition: SiPixelOfflineCalibAnalysisBase.h:117
edm::DetSetVector::end
iterator end()
Return the off-the-end iterator.
Definition: DetSetVector.h:325
SiPixelFolderOrganizer::setModuleFolder
bool setModuleFolder(const uint32_t &rawdetid=0, int type=0, bool isUpgrade=false)
Set folder name for a module or plaquette.
Definition: SiPixelFolderOrganizer.cc:27
convertSQLitetoXML_cfg.output
output
Definition: convertSQLitetoXML_cfg.py:72
SiPixelOfflineCalibAnalysisBase::beginJob
void beginJob() override
Definition: SiPixelOfflineCalibAnalysisBase.cc:134
converter
Definition: CandidateProducer.h:25
edm::Run
Definition: Run.h:45
edm
HLT enums.
Definition: AlignableModifier.h:19
cuy.col
col
Definition: cuy.py:1010
gather_cfg.cout
cout
Definition: gather_cfg.py:144
SiPixelOfflineCalibAnalysisBase::fitFunction_
static TF1 * fitFunction_
Definition: SiPixelOfflineCalibAnalysisBase.h:102
SiPixelOfflineCalibAnalysisBase::detIdNames_
std::map< uint32_t, std::string > detIdNames_
Definition: SiPixelOfflineCalibAnalysisBase.h:135
PixelBarrelName
Definition: PixelBarrelName.h:16
ElectronicIndex.h
SiPixelOfflineCalibAnalysisBase::SiPixelOfflineCalibAnalysisBase
SiPixelOfflineCalibAnalysisBase()
Definition: SiPixelOfflineCalibAnalysisBase.cc:53
edm::DetSetVector::begin
iterator begin()
Return an iterator to the first DetSet.
Definition: DetSetVector.h:314
dqm::legacy::MonitorElement
Definition: MonitorElement.h:462
SiPixelOfflineCalibAnalysisBase::bookDQMHistogram1D
MonitorElement * bookDQMHistogram1D(uint32_t detid, std::string name, std::string title, int nchX, double lowX, double highX)
Definition: SiPixelOfflineCalibAnalysisBase.cc:177
sipixelobjects::ElectronicIndex::dcol
int dcol
Definition: ElectronicIndex.h:8
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
SiPixelOfflineCalibAnalysisBase::calibrationSetup
virtual void calibrationSetup(const edm::EventSetup &iSetup)
Definition: SiPixelOfflineCalibAnalysisBase.cc:244
edm::Handle
Definition: AssociativeIterator.h:50
sipixelobjects::LocalPixel::rocCol
int rocCol() const
Definition: LocalPixel.h:35
SiPixelOfflineCalibAnalysisBase::folderMaker_
SiPixelFolderOrganizer * folderMaker_
Definition: SiPixelOfflineCalibAnalysisBase.h:123
SiPixelOfflineCalibAnalysisBase::vCalValues_
static std::vector< short > vCalValues_
Definition: SiPixelOfflineCalibAnalysisBase.h:119
sipixelobjects::LocalPixel
identify pixel inside single ROC
Definition: LocalPixel.h:7
DetectorIndex.h
edm::InputTag::label
std::string const & label() const
Definition: InputTag.h:36
DetId
Definition: DetId.h:17
PixelBarrelName::name
std::string name() const override
from base class
Definition: PixelBarrelName.cc:731
MakerMacros.h
SiPixelOfflineCalibAnalysisBase::daqBE_
DQMStore * daqBE_
Definition: SiPixelOfflineCalibAnalysisBase.h:124
PixelEndcapName
Definition: PixelEndcapName.h:16
PixelGeomDetUnit
Definition: PixelGeomDetUnit.h:15
SiPixelHistogramId::setHistoId
std::string setHistoId(std::string variable, uint32_t &rawId)
Set Histogram Id.
Definition: SiPixelHistogramId.cc:29
edm::ESHandle< SiPixelCalibConfiguration >
PixelTopology::ncolumns
virtual int ncolumns() const =0
SiPixelOfflineCalibAnalysisBase.h
SiPixelOfflineCalibAnalysisBase::geom_
edm::ESHandle< TrackerGeometry > geom_
Definition: SiPixelOfflineCalibAnalysisBase.h:109
sipixelobjects::ElectronicIndex::pxid
int pxid
Definition: ElectronicIndex.h:9
dqm::implementation::DQMStore::setCurrentFolder
void setCurrentFolder(std::string const &fullpath) override
Definition: DQMStore.h:569
dqm::implementation::DQMStore::save
DQM_DEPRECATED void save(std::string const &filename, std::string const &path="")
Definition: DQMStore.cc:761
SiPixelOfflineCalibAnalysisBase::bookDQMHistoPlaquetteSummary2D
MonitorElement * bookDQMHistoPlaquetteSummary2D(uint32_t detid, std::string name, std::string title)
Definition: SiPixelOfflineCalibAnalysisBase.cc:202
dqm::legacy::MonitorElement::getTH1
virtual TH1 * getTH1() const
Definition: MonitorElement.h:475
PixelGeomDetType.h
sipixelobjects::ElectronicIndex
Definition: ElectronicIndex.h:5
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
calib
Definition: CalibElectron.h:12
SiPixelOfflineCalibAnalysisBase::trackerGeomToken_
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > trackerGeomToken_
Definition: SiPixelOfflineCalibAnalysisBase.h:114
SiPixelOfflineCalibAnalysisBase::eventCounter_
uint32_t eventCounter_
Definition: SiPixelOfflineCalibAnalysisBase.h:130
SiPixelFrameConverter.h
SiPixelHistogramId
Definition: SiPixelHistogramId.h:25
edm::ParameterSet
Definition: ParameterSet.h:47
sipixelobjects::LocalPixel::DcolPxid::pxid
int pxid
Definition: LocalPixel.h:20
sipixelobjects::LocalPixel::DcolPxid
double collumn and pixel ID in double collumn representation
Definition: LocalPixel.h:19
SiPixelOfflineCalibAnalysisBase::calibrationEnd
virtual void calibrationEnd()
Definition: SiPixelOfflineCalibAnalysisBase.cc:248
sipixelobjects::LocalPixel::rocRow
int rocRow() const
Definition: LocalPixel.h:34
edm::DetSetVector::const_iterator
collection_type::const_iterator const_iterator
Definition: DetSetVector.h:102
PixelGeomDetUnit::specificTopology
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
Definition: PixelGeomDetUnit.cc:17
cond::runnumber
Definition: Time.h:19
SiPixelOfflineCalibAnalysisBase::calibToken_
edm::ESGetToken< SiPixelCalibConfiguration, SiPixelCalibConfigurationRcd > calibToken_
Definition: SiPixelOfflineCalibAnalysisBase.h:113
edm::Service
Definition: Service.h:30
iEvent
int iEvent
Definition: GenABIO.cc:224
LocalPixel.h
SiPixelOfflineCalibAnalysisBase::setDQMDirectory
bool setDQMDirectory(std::string dirName)
Definition: SiPixelOfflineCalibAnalysisBase.cc:214
edm::EventSetup::getHandle
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:155
SiPixelOfflineCalibAnalysisBase::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: SiPixelOfflineCalibAnalysisBase.cc:67
edm::EventSetup
Definition: EventSetup.h:58
SiPixelFrameConverter
Definition: SiPixelFrameConverter.h:15
SiPixelOfflineCalibAnalysisBase::cablingMapToken_
edm::ESGetToken< SiPixelFedCablingMap, SiPixelFedCablingMapRcd > cablingMapToken_
Definition: SiPixelOfflineCalibAnalysisBase.h:115
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
TrackCollections2monitor_cff.func
func
Definition: TrackCollections2monitor_cff.py:359
PixelSLinkDataInputSource_cfi.fedid
fedid
Definition: PixelSLinkDataInputSource_cfi.py:6
SiPixelOfflineCalibAnalysisBase::createOutputFile_
bool createOutputFile_
Definition: SiPixelOfflineCalibAnalysisBase.h:127
SiPixelOfflineCalibAnalysisBase::runnumbers_
std::vector< uint32_t > runnumbers_
Definition: SiPixelOfflineCalibAnalysisBase.h:129
SiPixelOfflineCalibAnalysisBase::siPixelCalibDigiProducer_
edm::InputTag siPixelCalibDigiProducer_
Definition: SiPixelOfflineCalibAnalysisBase.h:137
SiPixelOfflineCalibAnalysisBase::newDetID
virtual void newDetID(uint32_t detid)
Definition: SiPixelOfflineCalibAnalysisBase.cc:251
dqm::implementation::IBooker::book2D
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:177
Exception
Definition: hltDiff.cc:245
SiPixelFolderOrganizer
Definition: SiPixelFolderOrganizer.h:26
PixelGeomDetUnit.h
SiPixelCalibConfiguration::getColumnPattern
std::vector< short > getColumnPattern() const
Definition: SiPixelCalibConfiguration.h:34
TrackerOfflineValidation_Dqm_cff.dirName
dirName
Definition: TrackerOfflineValidation_Dqm_cff.py:55
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
SiPixelOfflineCalibAnalysisBase::checkCorrectCalibrationType
virtual bool checkCorrectCalibrationType()
Definition: SiPixelOfflineCalibAnalysisBase.cc:224
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
hgcalTestNeighbor_cfi.detector
detector
Definition: hgcalTestNeighbor_cfi.py:6
SiPixelOfflineCalibAnalysisBase::theCablingMap_
edm::ESHandle< SiPixelFedCablingMap > theCablingMap_
Definition: SiPixelOfflineCalibAnalysisBase.h:110
SiPixelOfflineCalibAnalysisBase::getVcalValues
static const std::vector< short > * getVcalValues()
Definition: SiPixelOfflineCalibAnalysisBase.cc:149
SiPixelOfflineCalibAnalysisBase::checkPixel
bool checkPixel(uint32_t detid, short row, short column)
Definition: SiPixelOfflineCalibAnalysisBase.cc:257
SiPixelCalibConfiguration::getRowPattern
std::vector< short > getRowPattern() const
Definition: SiPixelCalibConfiguration.h:31
PixelEndcapName::name
std::string name() const override
from base class
Definition: PixelEndcapName.cc:365
SiPixelOfflineCalibAnalysisBase::detIdsEntered_
std::map< uint32_t, int > detIdsEntered_
Definition: SiPixelOfflineCalibAnalysisBase.h:134
edm::Event
Definition: Event.h:73
PixelTopology::nrows
virtual int nrows() const =0
SiPixelOfflineCalibAnalysisBase::bookDQMHistogram2D
MonitorElement * bookDQMHistogram2D(uint32_t detid, std::string name, std::string title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Definition: SiPixelOfflineCalibAnalysisBase.cc:189
edm::InputTag
Definition: InputTag.h:15
dqm::implementation::IGetter::dirExists
virtual bool dirExists(std::string const &path) const
Definition: DQMStore.cc:708
SiPixelOfflineCalibAnalysisBase::calibTokenBeginRun_
edm::ESGetToken< SiPixelCalibConfiguration, SiPixelCalibConfigurationRcd > calibTokenBeginRun_
Definition: SiPixelOfflineCalibAnalysisBase.h:112
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
SiPixelOfflineCalibAnalysisBase::endJob
void endJob() override
Definition: SiPixelOfflineCalibAnalysisBase.cc:138
SiPixelOfflineCalibAnalysisBase::beginRun
void beginRun(const edm::Run &, const edm::EventSetup &) override
Definition: SiPixelOfflineCalibAnalysisBase.cc:119
sipixelobjects::LocalPixel::DcolPxid::dcol
int dcol
Definition: LocalPixel.h:20
SiPixelOfflineCalibAnalysisBase::theHistogramIdWorker_
SiPixelHistogramId * theHistogramIdWorker_
Definition: SiPixelOfflineCalibAnalysisBase.h:125
sipixelobjects::DetectorIndex
Definition: DetectorIndex.h:6
TrackerGeometry
Definition: TrackerGeometry.h:14
SiPixelOfflineCalibAnalysisBase::~SiPixelOfflineCalibAnalysisBase
~SiPixelOfflineCalibAnalysisBase() override
Definition: SiPixelOfflineCalibAnalysisBase.cc:60
edm::DetSet::const_iterator
collection_type::const_iterator const_iterator
Definition: DetSet.h:31