5 #ifndef GeoAccessVolumeAction_h 6 #define GeoAccessVolumeAction_h 1 8 #include "GeoModelKernel/GeoNodeAction.h" 9 #include "GeoModelKernel/GeoDefinitions.h" 48 const std::string &
getName ()
const;
110 unsigned int m_serialIdentPosition;
const GeoNameTag * m_nameTag
A pointer to a name tag. If the volume is named.
Like a GeoSerialDenominator. Identifies volumes, including virtual volumes.
This class generates a name for all physical volumes following it. The name is a prefix string follow...
PVConstLink m_volume
Returns a pointer to the ith physical volume under this one.
virtual void handleFullPhysVol(const GeoFullPhysVol *vol) override
Handles a physical volume.
virtual void handleSerialDenominator(const GeoSerialDenominator *sD) override
Handles a Serial Denominator.
unsigned int m_counter
The volume which we are interested in seeking.
virtual void handleSerialTransformer(const GeoSerialTransformer *sT) override
Handles a Serial Transformer.
const GeoSerialDenominator * m_serialDenominator
A pointer to a serial denominator. If one exists.
std::string m_name
The name of the volume. From a nametag or a serial denominator.
virtual void handleIdentifierTag(const GeoIdentifierTag *idTag) override
Handles an Identifier Tag.
Abstract base class for GeoModel alignment stores The interface allows to store/retrieve transformati...
PVConstLink getVolume() const
Returns the selected physical volume or nullptr if not found.
This class represent a physical volume whose absolute default and aligned positions are known and hel...
virtual void handleSerialIdentifier(const GeoSerialIdentifier *sI) override
Handles an Serial Identifier.
const GeoIdentifierTag * m_idTag
A pointer to an identifier tag. If the volume is identified.
unsigned int m_index
The volume which we are interested in seeking.
const std::string & getName() const
Returns the name of the volume. From nametag or serial denominator.
Query< int > getId() const
Returns the id of the volume. From the identifier.
This class gives an integral identifer to the following physical volume.
Query< int > m_id
The identifier of the volume. From an identifier tag.
virtual void handleNameTag(const GeoNameTag *nameTag) override
Handles a Name Tag.
const GeoTrf::Transform3D & getDefTransform() const
Returns the default ransformation to the volume.
Smart pointer to physical volume... constant.
virtual void handleTransform(const GeoTransform *xform) override
Handles a Transform.
This type of action sees the geometry graph in full detail, including each transformation and propert...
unsigned int m_serialDenomPosition
Position of the serial denominator. Used to assign a numeric suffix to the name, eg BaseName+99...
GeoTrf::Transform3D m_transform
The transformation to the ith volume.
const GeoTrf::Transform3D & getTransform() const
Returns the transformation to the volume.
Accesses volumes, returning the ith volume and also its transformation relative to the parent...
GeoTrf::Transform3D m_defTransform
The default transformation to the ith volume.
virtual void handlePhysVol(const GeoPhysVol *vol) override
Handles a physical volume.
A GeoPhysVol is a physical volume for normal recursive access only. This means, normally, that it represents a piece of detector that nobody cares about except for tracing engines like GEANT. More specifically:
std::vector< const GeoTransform * > m_pendingTransformList
List of Pending Transformations.