ATLAS Offline Software
GeoGetIds.cxx
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration.
3  */
13 
14 
16  int depthLimit /*= 1*/)
17  : m_action (action)
18 {
19  setDepthLimit (depthLimit);
20 }
21 
22 
23 void GeoGetIds::handleSerialTransformer (const GeoSerialTransformer *sT)
24 {
25  if (m_serialIdentifier) {
26  int idbase = m_serialIdentifier->getBaseId();
27  for (unsigned int i=0; i < sT->getNCopies(); i++) {
28  m_action (idbase + i);
29  }
30  }
31 }
32 
33 
34 void GeoGetIds::handleIdentifierTag (const GeoIdentifierTag *idTag)
35 {
36  m_serialIdentifier = nullptr;
37  m_action (idTag->getIdentifier());
38 }
39 
40 
41 void GeoGetIds::handleSerialIdentifier(const GeoSerialIdentifier *sI)
42 {
43  m_serialIdentifier = sI;
44 }
GeoGetIds::handleSerialIdentifier
virtual void handleSerialIdentifier(const GeoSerialIdentifier *sI) override
Definition: GeoGetIds.cxx:41
GeoGetIds.h
Visitor to collect all IDs under a GeoModel node.
GeoGetIds::handleIdentifierTag
virtual void handleIdentifierTag(const GeoIdentifierTag *idTag) override
Definition: GeoGetIds.cxx:34
IGeoGetIdsAction
Ensure that the extensions for the Vector3D are properly loaded.
Definition: GeoGetIds.h:28
lumiFormat.i
int i
Definition: lumiFormat.py:85
GeoGetIds::m_serialIdentifier
const GeoSerialIdentifier * m_serialIdentifier
Definition: GeoGetIds.h:51
GeoGetIds::m_action
IGeoGetIdsAction & m_action
Definition: GeoGetIds.h:50
python.CaloScaleNoiseConfig.action
action
Definition: CaloScaleNoiseConfig.py:77
GeoGetIds::GeoGetIds
GeoGetIds(IGeoGetIdsAction &action, int depthLimit=1)
Definition: GeoGetIds.cxx:15
GeoGetIds::handleSerialTransformer
virtual void handleSerialTransformer(const GeoSerialTransformer *sT) override
Definition: GeoGetIds.cxx:23