ATLAS Offline Software
|
Visitor to process all volumes under a GeoModel node. More...
#include <GeoVisitVolumes.h>
Public Member Functions | |
GeoVisitVolumes (IGeoVisitVolumesAction &action, int depthLimit=1) | |
Initialize to visit volumes keeping track of transformations. More... | |
GeoVisitVolumes (IGeoVisitVolumesNoXformAction &action, int depthLimit=1) | |
Initialize to visit volumes withoutkeeping track of transformations. More... | |
virtual void | handleTransform (const GeoTransform *xform) override |
Handles a Transform. More... | |
virtual void | handlePhysVol (const GeoPhysVol *vol) override |
Handles a physical volume. More... | |
virtual void | handleFullPhysVol (const GeoFullPhysVol *vol) override |
Handles a physical volume. More... | |
virtual void | handleNameTag (const GeoNameTag *nameTag) override |
Handles a Name Tag. More... | |
virtual void | handleSerialDenominator (const GeoSerialDenominator *sD) override |
Handles a Serial Denominator. More... | |
virtual void | handleSerialTransformer (const GeoSerialTransformer *sT) override |
Handles a Serial Transformer. More... | |
virtual void | handleIdentifierTag (const GeoIdentifierTag *idTag) override |
Handles an Identifier Tag. More... | |
virtual void | handleSerialIdentifier (const GeoSerialIdentifier *sI) override |
Handles an Serial Identifier. More... | |
Private Member Functions | |
GeoVisitVolumes (const GeoVisitVolumes &right)=delete | |
GeoVisitVolumes & | operator= (const GeoVisitVolumes &right)=delete |
void | handleVol (const GeoVPhysVol *vol) |
Private Attributes | |
std::variant< IGeoVisitVolumesAction *, IGeoVisitVolumesNoXformAction * > | m_action |
Callback. More... | |
const GeoNameTag * | m_nameTag |
A pointer to a name tag. If the volume is named. More... | |
const GeoSerialDenominator * | m_serialDenominator |
A pointer to a serial denominator. If one exists. More... | |
const GeoIdentifierTag * | m_idTag |
A pointer to an identifier tag. If the volume is identified. More... | |
std::vector< const GeoTransform * > | m_pendingTransformList |
List of Pending Transformations. More... | |
const GeoSerialIdentifier * | m_serialIdentifier |
Visitor to process all volumes under a GeoModel node.
Can take either an IGeoVisitVolumesAction
or an IGeoVisitVolumesNoXformAction
. In the latter case, we don't keep track of the geometrical transforms. It can be used as a faster option if you only care about the list of volumes but not where they're located.
Definition at line 76 of file GeoVisitVolumes.h.
GeoVisitVolumes::GeoVisitVolumes | ( | IGeoVisitVolumesAction & | action, |
int | depthLimit = 1 |
||
) |
Initialize to visit volumes keeping track of transformations.
Definition at line 23 of file GeoVisitVolumes.cxx.
GeoVisitVolumes::GeoVisitVolumes | ( | IGeoVisitVolumesNoXformAction & | action, |
int | depthLimit = 1 |
||
) |
Initialize to visit volumes withoutkeeping track of transformations.
Definition at line 36 of file GeoVisitVolumes.cxx.
|
privatedelete |
|
overridevirtual |
Handles a physical volume.
Definition at line 103 of file GeoVisitVolumes.cxx.
|
overridevirtual |
Handles an Identifier Tag.
Definition at line 187 of file GeoVisitVolumes.cxx.
|
overridevirtual |
Handles a Name Tag.
Definition at line 109 of file GeoVisitVolumes.cxx.
|
overridevirtual |
Handles a physical volume.
Definition at line 98 of file GeoVisitVolumes.cxx.
|
overridevirtual |
Handles a Serial Denominator.
Definition at line 116 of file GeoVisitVolumes.cxx.
|
overridevirtual |
Handles an Serial Identifier.
Definition at line 194 of file GeoVisitVolumes.cxx.
|
overridevirtual |
|
overridevirtual |
Handles a Transform.
Definition at line 48 of file GeoVisitVolumes.cxx.
|
private |
Definition at line 55 of file GeoVisitVolumes.cxx.
|
privatedelete |
|
private |
Callback.
Definition at line 118 of file GeoVisitVolumes.h.
|
private |
A pointer to an identifier tag. If the volume is identified.
Definition at line 127 of file GeoVisitVolumes.h.
|
private |
A pointer to a name tag. If the volume is named.
Definition at line 121 of file GeoVisitVolumes.h.
|
private |
List of Pending Transformations.
Definition at line 130 of file GeoVisitVolumes.h.
|
private |
A pointer to a serial denominator. If one exists.
Definition at line 124 of file GeoVisitVolumes.h.
|
private |
Definition at line 132 of file GeoVisitVolumes.h.