ATLAS Offline Software
RDOReaderDoubleSelector.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
15 // Silicon trackers includes
17 
19 
20 //InDetRawData includes
27 
28 // Event includes
30 
31 // DetDescr includes
33 
34 // Id includes
36 #include "InDetIdentifier/SCT_ID.h"
37 #include "InDetIdentifier/TRT_ID.h"
38 
39 // test includes
41 #include "LArCellContFakeCreator.h"
42 
43 // Gaudi includes
44 #include "GaudiKernel/MsgStream.h"
45 #include "GaudiKernel/SmartDataPtr.h"
46 
47 // test includes
48 #include <map>
49 
50 // Constructor with parameters:
52  , ISvcLocator *pSvcLocator)
53  : AthAlgorithm(name, pSvcLocator)
54  , m_pixelId(nullptr)
55  , m_sctId(nullptr)
56  , m_trtId(nullptr)
57  , m_calocellId(nullptr)
58 {}
59 
60 // Initialize method:
62 {
63  ATH_MSG_INFO("RDOReaderDoubleSelector::initialize()" );
64 
65  ATH_CHECK( detStore()->retrieve(m_pixelId, "PixelID") );
66  ATH_CHECK( detStore()->retrieve(m_sctId, "SCT_ID") );
67  ATH_CHECK( detStore()->retrieve(m_trtId, "TRT_ID") );
68 
69  ATH_CHECK( detStore()->retrieve(m_calocellId, "CaloCell_ID") );
71 
72  return StatusCode::SUCCESS;
73 }
74 
75 // Execute method:
77 {
78  ATH_MSG_DEBUG("RDOReaderDoubleSelector::execute()" );
79 
80  ATH_CHECK( checkPixel() );
81  ATH_CHECK( checkSCT() );
82  ATH_CHECK( checkTRT() );
83  ATH_CHECK( checkCells() );
84  return StatusCode::SUCCESS;
85 }
86 
88 {
89  ATH_MSG_DEBUG("RDOReaderDoubleSelector::checkPixel()" );
90 
91  const PixelRDO_Container* pixCont = nullptr;
92  ATH_CHECK( evtStore()->retrieve(pixCont, "PixelRDOs") );
93 
94  // loop on all RDO collections read in and check them
95  int nmatch = 0;
96  bool error = false;
99 
100  ATH_MSG_DEBUG("PixelRDO_Container size "
101  << pixCont->size() << " " );
102 
103  // Check for non-zero length of container
104  if (pixCont->begin() == pixCont->end()) {
105  ATH_MSG_ERROR("Container '" << "PixelRDOs" << "' is EMPTY !" );
106  return StatusCode::FAILURE;
107  }
108 
109  for (PixelRDO_Container::const_iterator it = pixCont->begin() ;
110  it != pixCont->end() ; ++it) {
111 
112  const InDetRawDataCollection<PixelRDORawData>* RDO_Collection(&(**it));
113 
114  ATH_MSG_DEBUG("Read RDO collection: size, ids "
115  << RDO_Collection->size() << " "
116  << m_pixelId->show_to_string(RDO_Collection->identify(), &cntx) << " "
117  << MSG::hex << (unsigned int)RDO_Collection->identifyHash() << MSG::dec );
118 
119  // create a new pixel RDO collection
120  MsgStream log(msgSvc(), name());
122  creator.createPixelRawDataColl(RDO_Collection->identifyHash(), m_pixelId, msg());
123 
124  ATH_MSG_DEBUG("Test RDO collection: size, ids "
125  << rdocoll->size() << " "
126  << m_pixelId->show_to_string(rdocoll->identify(), &cntx) << " "
127  << MSG::hex << (unsigned int)rdocoll->identifyHash() << MSG::dec );
128 
129 
130  // Use one of the specific clustering AlgTools to make clusters
131  //typedef InDetRawDataCollection<Pixel1RawData> RDO1_Collection_type;
132  typedef InDetRawDataCollection<PixelRDORawData> RDO_Collection_type;
133 
134  // loop on all RDOs
135  RDO_Collection_type::const_iterator nextRDO = RDO_Collection->begin();
136  RDO_Collection_type::const_iterator lastRDO = RDO_Collection->end();
137  RDO_Collection_type::const_iterator nextRDO1 = rdocoll->begin();
138  RDO_Collection_type::const_iterator lastRDO1 = rdocoll->end();
139  for (; nextRDO != lastRDO && nextRDO1 != lastRDO1 ; ++nextRDO, ++nextRDO1) {
140  // Look for match
141  if (((*nextRDO)->identify() != (*nextRDO1)->identify()) ||
142  ((*nextRDO)->getWord() != (*nextRDO1)->getWord())) {
143 
144  ATH_MSG_ERROR("RDO's do NOT match: ids, word "
145  << m_pixelId->show_to_string((*nextRDO)->identify()) << " "
146  << m_pixelId->show_to_string((*nextRDO1)->identify()) << " "
147  << MSG::hex << (*nextRDO)->getWord() << " "
148  << MSG::hex << (*nextRDO1)->getWord() << " "
149  );
150  error = true;
151  }
152  else {
153  nmatch++;
154  }
155  }
156  ATH_MSG_DEBUG("Matching RDOs " << nmatch );
157 
158  delete rdocoll;
159  }
160 
161  // print out pixel element links
162  // Retrive the element link vector
163  const PixelRDOElemLinkVec* linkVec = nullptr;
164  ATH_CHECK( evtStore()->retrieve(linkVec, "PixelRDOELs") );
165 
166  ATH_MSG_DEBUG("PixelRDOElemLinkVec found with "
167  << linkVec->pixelRDOs().size()
168  << " RDOs " );
169  for (unsigned int i = 0; i < linkVec->pixelRDOs().size(); ++i) {
170  // Print out rdos from element link
171  PixelRDOElemLinkVec::elem_type rdo = linkVec->pixelRDOs()[i];
172  const PixelRDORawData* ncrdo = *rdo;
173  ATH_MSG_DEBUG("RDO ID=" << m_pixelId->show_to_string((*rdo)->identify())
174  << "RDO ToT=" << ncrdo->getToT() );
175  }
176 
177 
178  if (error) {
179  ATH_MSG_INFO("ERROR reading and checking Pixel RDO collections " );
180  }
181  else {
182  ATH_MSG_INFO("Successfully read and checked Pixel RDO collections " );
183  }
184 
185  return StatusCode::SUCCESS;
186 }
187 
189 {
190  ATH_MSG_DEBUG("RDOReaderDoubleSelector::checkSCT()" );
191 
192  const SCT_RDO_Container* sctCont = nullptr;
193  ATH_CHECK( evtStore()->retrieve(sctCont, "SCT_RDOs") );
194 
195  // loop on all RDO collections read in and check them
196  int nmatch = 0;
197  bool error = false;
198  InDetRawDataFakeCreator creator;
199  IdContext cntx = m_sctId->wafer_context();
200 
201  ATH_MSG_DEBUG("SCT_RDO_Container size "
202  << sctCont->size() << " " );
203 
204  // Check for non-zero length of container
205  if (sctCont->begin() == sctCont->end()) {
206  ATH_MSG_ERROR("Container '" << "SCT_RDOs" << "' is EMPTY !" );
207  return StatusCode::FAILURE;
208  }
209 
210  for (SCT_RDO_Container::const_iterator it = sctCont->begin() ;
211  it != sctCont->end() ; ++it) {
212 
213  const InDetRawDataCollection<SCT_RDORawData>* RDO_Collection(&(**it));
214 
215  ATH_MSG_DEBUG("Read RDO collection: size, ids "
216  << RDO_Collection->size() << " "
217  << m_sctId->show_to_string(RDO_Collection->identify(), &cntx) << " "
218  << MSG::hex << (unsigned int)RDO_Collection->identifyHash() << MSG::dec );
219 
220  // create a new sct RDO collection
221  MsgStream log(msgSvc(), name());
223  creator.createSCT_RawDataColl(RDO_Collection->identifyHash(), m_sctId, msg());
224 
225  ATH_MSG_DEBUG("Test RDO collection: size, ids "
226  << rdocoll->size() << " "
227  << m_sctId->show_to_string(rdocoll->identify(), &cntx) << " "
228  << MSG::hex << (unsigned int)rdocoll->identifyHash() << MSG::dec );
229 
230 
231  // Use one of the specific clustering AlgTools to make clusters
232  typedef InDetRawDataCollection<SCT_RDORawData> RDO_Collection_type;
233 
234  // loop on all RDOs
235  RDO_Collection_type::const_iterator nextRDO = RDO_Collection->begin();
236  RDO_Collection_type::const_iterator lastRDO = RDO_Collection->end();
237  RDO_Collection_type::const_iterator nextRDO1 = rdocoll->begin();
238  RDO_Collection_type::const_iterator lastRDO1 = rdocoll->end();
239  for (; nextRDO != lastRDO && nextRDO1 != lastRDO1 ; ++nextRDO, ++nextRDO1) {
240  // Look for match
241  if (((*nextRDO)->identify() != (*nextRDO1)->identify()) ||
242  ((*nextRDO)->getGroupSize() != (*nextRDO1)->getGroupSize())) {
243 
244  ATH_MSG_ERROR("RDO's do NOT match: ids, group, strip "
245  << m_sctId->show_to_string((*nextRDO)->identify()) << " "
246  << m_sctId->show_to_string((*nextRDO1)->identify()) << " "
247  << MSG::hex
248  << (*nextRDO)->getGroupSize() << " "
249  << (*nextRDO1)->getGroupSize() << " "
250  << MSG::dec
251  );
252  error = true;
253  }
254  else {
255  nmatch++;
256  }
257  }
258  ATH_MSG_DEBUG("Matching RDOs " << nmatch );
259 
260  delete rdocoll;
261  }
262 
263  if (error) {
264  ATH_MSG_INFO("ERROR reading and checking SCT RDO collections " );
265  }
266  else {
267  ATH_MSG_INFO("Successfully read and checked SCT RDO collections " );
268  }
269 
270  return StatusCode::SUCCESS;
271 }
272 
274 {
275  ATH_MSG_DEBUG("RDOReaderDoubleSelector::checkTRT()" );
276 
277  const TRT_RDO_Container* trtCont = nullptr;
278  ATH_CHECK( evtStore()->retrieve(trtCont, "TRT_RDOs") );
279 
280  // loop on all RDO collections read in and check them
281  int nmatch = 0;
282  bool error = false;
283  InDetRawDataFakeCreator creator;
285 
286  ATH_MSG_DEBUG("TRT_RDO_Container size "
287  << trtCont->size() << " " );
288 
289  // Check for non-zero length of container
290  if (trtCont->begin() == trtCont->end()) {
291  ATH_MSG_ERROR("Container '" << "TRT_RDOs"
292  << "' is EMPTY !" );
293  return StatusCode::FAILURE;
294  }
295 
296  for (TRT_RDO_Container::const_iterator it = trtCont->begin() ;
297  it != trtCont->end() ; ++it) {
298 
299  const InDetRawDataCollection<TRT_RDORawData>* RDO_Collection(&(**it));
300 
301  ATH_MSG_DEBUG("Read RDO collection: size, ids "
302  << RDO_Collection->size() << " "
303  << m_trtId->show_to_string(RDO_Collection->identify(), &cntx) << " "
304  << MSG::hex << (unsigned int)RDO_Collection->identifyHash() << MSG::dec );
305 
306  // create a new trt RDO collection
307  MsgStream log(msgSvc(), name());
309  creator.createTRT_RawDataColl(RDO_Collection->identifyHash(), m_trtId, msg());
310 
311  ATH_MSG_DEBUG("Test RDO collection: size, ids "
312  << rdocoll->size() << " "
313  << m_trtId->show_to_string(rdocoll->identify(), &cntx) << " "
314  << MSG::hex << (unsigned int)rdocoll->identifyHash() << MSG::dec );
315 
316 
317  // Use one of the specific clustering AlgTools to make clusters
318  typedef InDetRawDataCollection<TRT_RDORawData> RDO_Collection_type;
319 
320  // loop on all RDOs
321  RDO_Collection_type::const_iterator nextRDO = RDO_Collection->begin();
322  RDO_Collection_type::const_iterator lastRDO = RDO_Collection->end();
323  RDO_Collection_type::const_iterator nextRDO1 = rdocoll->begin();
324  RDO_Collection_type::const_iterator lastRDO1 = rdocoll->end();
325  for (; nextRDO != lastRDO && nextRDO1 != lastRDO1 ; ++nextRDO, ++nextRDO1) {
326  // Look for match
327  if (((*nextRDO)->identify() != (*nextRDO1)->identify()) ||
328  ((*nextRDO)->highLevel() != (*nextRDO1)->highLevel()) ||
329  ((*nextRDO)->timeOverThreshold() != (*nextRDO1)->timeOverThreshold()) ||
330  ((*nextRDO)->driftTimeBin() != (*nextRDO1)->driftTimeBin())) {
331 
332  ATH_MSG_ERROR("RDO's do NOT match: ids, highlvl, TOT, drift "
333  << m_trtId->show_to_string((*nextRDO)->identify()) << " "
334  << m_trtId->show_to_string((*nextRDO1)->identify()) << " "
335  << MSG::hex
336  << (*nextRDO)->highLevel() << " "
337  << (*nextRDO1)->highLevel() << " "
338  << (*nextRDO)->timeOverThreshold() << " "
339  << (*nextRDO1)->timeOverThreshold() << " "
340  << (*nextRDO)->driftTimeBin() << " "
341  << (*nextRDO1)->driftTimeBin() << " "
342  << MSG::dec
343  );
344  error = true;
345  }
346  else {
347  nmatch++;
348  }
349  }
350  ATH_MSG_DEBUG("Matching RDOs " << nmatch );
351 
352  delete rdocoll;
353  }
354 
355  if (error) {
356  ATH_MSG_INFO("ERROR reading and checking TRT RDO collections " );
357  }
358  else {
359  ATH_MSG_INFO("Successfully read and checked TRT RDO collections " );
360  }
361 
362  return StatusCode::SUCCESS;
363 }
364 
366 {
367  ATH_MSG_DEBUG("RDOReaderDoubleSelector::checkCells()" );
368 
369  // Retrieve container
370  const CaloCellContainer* caloCont = nullptr;
371  ATH_CHECK( evtStore()->retrieve(caloCont, "CaloCellCont1") );
372  ATH_MSG_DEBUG( "Container '" << "CaloCellCont"
373  << "' retrieved from StoreGate" );
374 
376  ATH_CHECK(caloMgrHandle.isValid());
377 
378  LArCellContFakeCreator creator;
379 
380  // Create container
381  MsgStream log(msgSvc(), name());
382  const CaloCellContainer* caloCont1 = creator.createCaloCellContainer(m_calocellId,
383  *caloMgrHandle,
384  msg());
385 
387  CaloCellContainer::const_iterator last = caloCont->end();
388  CaloCellContainer::const_iterator first1 = caloCont1->begin();
389  CaloCellContainer::const_iterator last1 = caloCont1->end();
390 
391  bool error = false;
392  int ncells = 0;
393  int ncellErrs = 0;
394 
395  for (; first != last && first1 != last1; ++first, ++first1) {
396  if (((*first)->ID() != (*first1)->ID()) ||
397  (fabs((*first)->energy() - (*first1)->energy() ) > 0.01 * fabs((*first)->energy())) ||
398  (fabs((*first)->time() - (*first1)->time() ) > 0.0002 * fabs((*first)->time())) ||
399  (std::abs((*first)->quality() - (*first1)->quality() ) > 0) ||
400  (std::abs((*first)->provenance() - (*first1)->provenance() ) > 0) ||
401  (fabs((*first)->eta() - (*first1)->eta() ) > 0.0000001) ||
402  (fabs((*first)->phi() - (*first1)->phi() ) > 0.0000001)) {
403  ATH_MSG_ERROR("CaloCell1,2 differ: id "
404  << m_calocellId->show_to_string((*first)->ID())
405  << m_calocellId->show_to_string((*first1)->ID())
406  << " energy " << (*first)->energy() << " "
407  << (*first1)->energy()
408  << " time " << (*first)->time() << " "
409  << (*first1)->time()
410  << " quality " << (*first)->quality() << " "
411  << (*first1)->quality()
412  << " provenance " << (*first)->provenance() << " "
413  << (*first1)->provenance()
414  << " eta " << (*first)->eta() << " "
415  << (*first1)->eta()
416  << " phi " << (*first)->phi() << " "
417  << (*first1)->phi());
418  error = true;
419  ncellErrs++;
420  }
421  ncells++;
422  }
423 
424  printCells(caloCont);
425 
426  if (error) {
427  ATH_MSG_ERROR("Errors: " << ncellErrs );
428  return StatusCode::FAILURE;
429  }
430  else {
431  ATH_MSG_INFO("Successful check of CaloCellContainer I/O. Cells read: " << ncells );
432  }
433  return StatusCode::SUCCESS;
434 }
435 
436 // Print cells
438 {
439 
440  ATH_MSG_INFO("RDOReaderDoubleSelector::printRDOs()" );
441 
442  // loop on all cells
443 
445  CaloCellContainer::const_iterator last = caloCont->end();
446 
447  for (; first != last; ++first) {
448 
449  ATH_MSG_DEBUG("CaloCell: id "
450  << m_calocellId->show_to_string((*first)->ID())
451  << std::setprecision(5)
452  << " energy " << (*first)->energy()
453  << " time " << (*first)->time()
454  << " quality " << (*first)->quality()
455  << " provenance " << (*first)->provenance()
456  << " eta " << (*first)->eta()
457  << " phi " << (*first)->phi()
458  );
459  }
460 
461  ATH_MSG_DEBUG("RDOReaderDoubleSelector::printCells() end" );
462 
463 }
464 
465 
466 // Finalize method:
468 {
469  ATH_MSG_INFO("RDOReaderDoubleSelector::finalize()" );
470  return StatusCode::SUCCESS;
471 }
472 
RDOReaderDoubleSelector::m_sctId
const SCT_ID * m_sctId
IDhelper for creating objects.
Definition: RDOReaderDoubleSelector.h:85
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
PixelID.h
This is an Identifier helper class for the Pixel subdetector. This class is a factory for creating co...
InDetRawDataFakeCreator
Class which encapsulates the creation of an InDetRawDataCollection.
Definition: InDetRawDataFakeCreator.h:41
RDOReaderDoubleSelector::m_caloMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
Need DD mgr to create cells.
Definition: RDOReaderDoubleSelector.h:91
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
SCT_ID.h
This is an Identifier helper class for the SCT subdetector. This class is a factory for creating comp...
TRT_RDO_Container.h
SG::ReadCondHandle
Definition: ReadCondHandle.h:44
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
RDOReaderDoubleSelector::execute
virtual StatusCode execute() override
Algorithm execute once per event.
Definition: RDOReaderDoubleSelector.cxx:76
RDOReaderDoubleSelector::finalize
virtual StatusCode finalize() override
Algorithm finalize at end of job.
Definition: RDOReaderDoubleSelector.cxx:467
TRT_RDO_Collection.h
InDetRawDataCollection::identify
virtual Identifier identify() const override final
skel.it
it
Definition: skel.GENtoEVGEN.py:423
TRT_ID.h
This is an Identifier helper class for the TRT subdetector. This class is a factory for creating comp...
IdentifiableContainerMT::size
size_t size() const
Duplicate of fullSize for backwards compatability.
Definition: IdentifiableContainerMT.h:209
RDOReaderDoubleSelector::m_calocellId
const CaloCell_ID * m_calocellId
Need id helper to create cells.
Definition: RDOReaderDoubleSelector.h:97
RDOReaderDoubleSelector::RDOReaderDoubleSelector
RDOReaderDoubleSelector()
Avoid use of default constructor.
InDetRawDataContainer
Definition: InDetRawDataContainer.h:27
CaloCell_ID.h
AthCommonDataStore< AthCommonMsg< Algorithm > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
LArCellContFakeCreator::createCaloCellContainer
CaloCellContainer * createCaloCellContainer(const CaloCell_ID *calocellId, const CaloDetDescrManager *caloMgr, MsgStream &log) const
Create a CaloCellContainer with LAr cells.
Definition: LArCellContFakeCreator.h:61
InDetRawDataCollection::identifyHash
virtual IdentifierHash identifyHash() const override final
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
PixelRDOElemLinkVec
vector containing element links to pixel RDOs
Definition: PixelRDOElemLinkVec.h:40
AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
SCT_RDO_Container.h
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
lumiFormat.i
int i
Definition: lumiFormat.py:92
PixelRDO_Collection.h
RDOReaderDoubleSelector::checkTRT
StatusCode checkTRT() const
Compare objects read with newly created ones.
Definition: RDOReaderDoubleSelector.cxx:273
TRT_ID::straw_layer_context
IdContext straw_layer_context(void) const
straw_layer id
Definition: TRT_ID.h:713
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
RDOReaderDoubleSelector::checkCells
StatusCode checkCells() const
Compare objects read with newly created ones.
Definition: RDOReaderDoubleSelector.cxx:365
InDetRawDataFakeCreator::createSCT_RawDataColl
const InDetRawDataCollection< SCT_RDORawData > * createSCT_RawDataColl(IdentifierHash hashId, const SCT_ID *sctId, MsgStream &log)
Create SCT_RawDataCollection.
Definition: InDetRawDataFakeCreator.h:141
InDetRawDataCollection
Definition: InDetRawDataCollection.h:31
RDOReaderDoubleSelector::printCells
void printCells(const CaloCellContainer *larCont) const
Print out cell info.
Definition: RDOReaderDoubleSelector.cxx:437
InDetRawDataFakeCreator::createTRT_RawDataColl
const InDetRawDataCollection< TRT_RDORawData > * createTRT_RawDataColl(IdentifierHash hashId, const TRT_ID *trtId, MsgStream &log)
Create TRT_RawDataCollection.
Definition: InDetRawDataFakeCreator.h:189
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
IdentifiableContainerMT::end
const_iterator end() const
return const_iterator for end of container
Definition: IdentifiableContainerMT.h:242
SCT_ID::wafer_context
IdContext wafer_context(void) const
Definition: SCT_ID.h:705
PixelRDORawData::getToT
virtual int getToT() const =0
IdentifiableContainerMT::const_iterator
Definition: IdentifiableContainerMT.h:82
IdentifiableContainerMT::begin
const_iterator begin() const
return const_iterator for first entry
Definition: IdentifiableContainerMT.h:236
PixelRDOElemLinkVec.h
Class definition for PixelRDOElemLinkVec.
AthAlgorithm
Definition: AthAlgorithm.h:47
LArCellContFakeCreator
Create a CaloCellContainer with LArCells for POOL I/O tests algs.
Definition: LArCellContFakeCreator.h:37
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
RDOReaderDoubleSelector.h
Test Algorithm for POOL I/O, reads InDetRawData and CaloCells from transient store.
SCT_RDO_Collection.h
LArCellContFakeCreator.h
Create a CaloCellContainer with LArCells for POOL I/O tests algs.
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
CaloCellContainer.h
CaloCellContainer
Container class for CaloCell.
Definition: CaloCellContainer.h:55
PixelRDO_Container.h
RDOReaderDoubleSelector::m_pixelId
const PixelID * m_pixelId
IDhelper for creating objects.
Definition: RDOReaderDoubleSelector.h:82
DataVector< RawDataT >::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
RDOReaderDoubleSelector::initialize
virtual StatusCode initialize() override
Algorithm initialize at begin of job.
Definition: RDOReaderDoubleSelector.cxx:61
RDOReaderDoubleSelector::m_trtId
const TRT_ID * m_trtId
IDhelper for creating objects.
Definition: RDOReaderDoubleSelector.h:88
AtlasDetectorID::show_to_string
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
Definition: AtlasDetectorID.cxx:574
PixelID::wafer_context
IdContext wafer_context(void) const
Definition: PixelID.h:590
DeMoScan.first
bool first
Definition: DeMoScan.py:534
AthCommonMsg< Algorithm >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
RDOReaderDoubleSelector::checkPixel
StatusCode checkPixel() const
Compare objects read with newly created ones.
Definition: RDOReaderDoubleSelector.cxx:87
RDOReaderDoubleSelector::checkSCT
StatusCode checkSCT() const
Compare objects read with newly created ones.
Definition: RDOReaderDoubleSelector.cxx:188
PixelRDORawData
Definition: PixelRDORawData.h:23
InDetRawDataFakeCreator.h
Class which encapsulates the creation of an InDetRawDataCollection.
PixelRDOElemLinkVec::pixelRDOs
const std::vector< elem_type > & pixelRDOs() const
Definition: PixelRDOElemLinkVec.h:79
error
Definition: IImpactPoint3dEstimator.h:70
IdContext
class IdContext
Definition: IdContext.h:34
DataVector< RawDataT >::size
size_type size() const noexcept
Returns the number of elements in the collection.
InDetRawDataFakeCreator::createPixelRawDataColl
const InDetRawDataCollection< PixelRDORawData > * createPixelRawDataColl(IdentifierHash hashId, const PixelID *pixelId, MsgStream &log)
Create PixelRawDataCollection.
Definition: InDetRawDataFakeCreator.h:76
DataVector< RawDataT >::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.